下記のコードを書くと
TypeError: ("can't multiply sequence by non-int of type 'float'", u'occurred at index 0')が出てきます.
どこを直せばよいか教えてください.
cf_lst = pd.DataFrame(cf_lst) burden_hight = pd.read_csv('burdenhight.csv', header=None, dtype='float').values.tolist() cf_layer_X = [] for i in range(number_of_probe_layer): burdenhight = burden_hight[i] cf_X = cf_lst.apply(lambda r: (sum(r[7+28*i:14+28*i]) - sum(r[21+28*i:28+28*i]))/(burden_hight), axis=1).tolist()
Traceback (most recent call last): File ".\all.py", line 140, in <module> cf_X = cf_lst.apply(lambda r: (sum(r[7+28*i:14+28*i]) - sum(r[21+28*i:28+28*i]))/(width_build * burden_hight * average_dypre), axis=1).tolist() File "C:\Python27_2017\lib\site-packages\pandas\core\frame.py", line 4152, in apply return self._apply_standard(f, axis, reduce=reduce) File "C:\Python27_2017\lib\site-packages\pandas\core\frame.py", line 4248, in _apply_standard results[i] = func(v) File ".\all.py", line 140, in <lambda> cf_X = cf_lst.apply(lambda r: (sum(r[7+28*i:14+28*i]) - sum(r[21+28*i:28+28*i]))/(width_build * burden_hight * average_dypre), axis=1).tolist() TypeError: ("can't multiply sequence by non-int of type 'float'", u'occurred at index 0')
burdenhight.csvは以下です
0.01375 0.0175 0.02625 0.035 0.035 0.035 0.035 0.035 0.02625 0.0175 0.02375
cf_lstが不明なので、追記するか、前の質問と同じでしたらリンクを記載しておいたほうがよいでしょう。
なお、提示コードを前の質問と同じテストデータでPython2.7環境で実行してみましたがエラーなく実行できました。
あなたの回答
tips
プレビュー