実現したいこと
こちらの関連質問です。
data.csvは以下のようなファイルです。
x 11 21 31
今、y=x/6.1、z=log10(y)として計算した値をx列の隣に追加したいです。「該当のソースコード」の7行目までは正しく回ります。どなたかコードを直してください。
欲しい結果(result.csv)は以下の通りです。
x y z 11 1.803278689 0.25606285 21 3.442622951 0.53688946 31 5.081967213 0.706031859
発生している問題・エラーメッセージ
Traceback (most recent call last): File "〇〇〇\testCV658teratail2.py", line 13, in <module> dg['z'] = math.log10(dg['y']) ~~~~~~~~~~^^^^^^^^^ File "〇〇〇\site-packages\pandas\core\series.py", line 251, in wrapper raise TypeError(f"cannot convert the series to {converter}") TypeError: cannot convert the series to <class 'float'>
該当のソースコード
python
1import pandas as pd 2import math 3 4dg = pd.read_csv('data.csv') 5x1 = dg['x'] 6 7dg['y'] = x1/6.1 8dg['z'] = math.log10(dg['y']) 9 10filename = 'result.csv' 11dg.to_csv(filename, sep=',', index=False)
試したこと
「該当のソースコード」の8行目を
dg['z'] = math.log10(float(dg['y']))
にしても同様のエラーが出てしまいました。
回答1件
あなたの回答
tips
プレビュー
2026/01/28 02:38