Python 无法将数据帧字符串转换为浮点
我试图将一列字符串从csv读取到dataframe后转换为float。不幸的是,我得到了以下错误:Python 无法将数据帧字符串转换为浮点,python,pandas,csv,Python,Pandas,Csv,我试图将一列字符串从csv读取到dataframe后转换为float。不幸的是,我得到了以下错误: ValueError: could not convert string to float: size 我使用的代码如下所示: df['size'] = df['size'].apply(lambda x:float(x)) 有什么想法吗 我的数据帧示例如下: >>> df.head(4) localtime symbol
ValueError: could not convert string to float: size
我使用的代码如下所示:
df['size'] = df['size'].apply(lambda x:float(x))
有什么想法吗
我的数据帧示例如下:
>>> df.head(4)
localtime symbol exchange price size
NaN localtime symbol exch price size
0 2017-08-01 13:30:00.130514241 AAPL NSDQ 149.08 71
1 2017-08-01 13:30:00.148672863 AAPL NSDQ 149.05 33
2 2017-08-01 13:30:00.148695312 AAPL BX 149.05 45
尝试使用
pd.to\u numeric
df['size'] = pd.to_numeric(df['size'], errors='coerce')
或:
从您发布的数据来看,您的列中似乎有“大小”。这就是为什么会出现错误。您可以使用
skiprows
跳过任何不需要的行 您可以查看size
系列的值吗。看起来它有字符串size
你能发布一个数据帧的小样本吗?它们都是csvtks chrisz中的数值,只是看起来你的csv没有被正确读取。看起来列名也被读入了数据帧的第一行。
df['size'] = df['size'].astype(float)