我有一个带有“cap”列的熊猫数据框。该列主要由浮点数组成,但其中包含一些字符串,例如在索引 2 处。
df =
cap
0 5.2
1 na
2 2.2
3 7.6
4 7.5
5 3.0
...
我从 csv 文件中导入我的数据,如下所示:
df = DataFrame(pd.read_csv(myfile.file))
不幸的是,当我这样做时,“cap”列完全作为字符串导入。我希望将浮点数标识为浮点数,将字符串标识为字符串。尝试使用以下方法进行转换:
df['cap'] = df['cap'].astype(float)
抛出一个错误:
could not convert string to float: na
有什么方法可以将所有数字变成浮点数,但将“na”保留为字符串?