熊猫:转换为数字,必要时创建NaN假设我在数据框中有一个列,其中包含一些数字和一些非数字>> df['foo']0 0.01 103.82 751.13 0.04 0.05 -6 -7 0.08 -9 0.0Name: foo, Length: 9, dtype: object如何将此列转换为np.float,并将其他所有不浮动的列转换为NaN?当我尝试:>> df['foo'].astype(np.float)要么>> df['foo'].apply(np.float)我明白了 ValueError: could not convert string to float: -
3 回答
收到一只叮咚
TA贡献1821条经验 获得超4个赞
使用convert_objectsSeries方法(和convert_numeric):
In [11]: s
Out[11]:
0 103.8
1 751.1
2 0.0
3 0.0
4 -
5 -
6 0.0
7 -
8 0.0
dtype: object
In [12]: s.convert_objects(convert_numeric=True)
Out[12]:
0 103.8
1 751.1
2 0.0
3 0.0
4 NaN
5 NaN
6 0.0
7 NaN
8 0.0
dtype: float64
注意:这也可用作DataFrame方法。
添加回答
举报
0/150
提交
取消