我有一个熊猫数据框。我的一个专栏只应该是花车。当我尝试将该列转换为浮动状态时,我收到警报,表明有字符串。我想删除此列中的值为字符串的所有行...删除列值类型为字符串的行Pandas
6
A
回答
10
使用convert_objects
与PARAM convert_numeric=True
这将迫使任何非数值到NaN
:
In [24]:
df = pd.DataFrame({'a': [0.1,0.5,'jasdh', 9.0]})
df
Out[24]:
a
0 0.1
1 0.5
2 jasdh
3 9
In [27]:
df.convert_objects(convert_numeric=True)
Out[27]:
a
0 0.1
1 0.5
2 NaN
3 9.0
In [29]:
然后,您可以删除它们:
df.convert_objects(convert_numeric=True).dropna()
Out[29]:
a
0 0.1
1 0.5
3 9.0
UPDATE
由于0.17.0
这个版本方法现在是deprecated,你需要t Ø使用to_numeric
不幸的是这工作在Series
而不是整个DF这样的等同的代码现在:
df.apply(lambda x: pd.to_numeric(x, errors='coerce')).dropna()
0
您可以从dtype.kind
属性中找到列的数据类型。类似于df[col].dtype.kind
。有关更多详细信息,请参阅the numpy docs。转置数据框以从索引转到列。
相关问题
- 1. pandas dataframe将列类型转换为字符串或分类
- 2. pandas read_csv将混合类型列转换为字符串
- 3. 以字符串格式删除Pandas Dataframe中的某些行
- 4. 删除行中列时在列的值是一个字符串
- 5. Python Pandas使用另一列删除子字符串
- 6. C++删除C字符串/其他类型的阵列
- 7. 如何删除Pandas中列中特殊字符之前的部分字符串?
- 8. 删除包含任意多列中的字符串值的行
- 9. .NET字符串赋值删除字符
- 10. 从其他列删除字符串行及其相应的值
- 11. 字符串的行为类似于值类型
- 12. 类型字符串()的值不能转换为字符串
- 13. pandas:将字符串列转换为有序的类别?
- 14. 删除行与字符值
- 15. 将字符串值转换为类型
- 16. 在列值中按字符串删除行
- 17. 删除字符串中的字符串
- 18. 删除字符串[]中的空值?
- 19. 删除空字符串列的空间
- 20. Python Pandas删除包含列表中的值的行
- 21. 从PHP中的字符串中删除任何类型的URL?
- 22. 删除字符串
- 23. 删除字符串
- 24. 删除字符串
- 25. 删除字符串
- 26. 删除字符串
- 27. 删除字符串
- 28. 删除字符串
- 29. 将字符串转换为字符串的泛型类型
- 30. 删除基于字符串的行
感谢这个!我的数据框有多列。一些列需要有字符串。例如,我有一个'姓名'栏和一个'年龄'栏。 “年龄”栏需要是数字。我试过:df.age.convert_objects(convert_numeric = True)并且'Series'对象没有属性'convert_objects'。 – user3347713 2014-11-06 17:03:02
你需要做'df [['age']]。convert_objects(convert_numeric = True)'在这种情况下 – EdChum 2014-11-06 17:04:52
哦,我明白了,所以[['age']]选择了df中的列。很有帮助。然而,我得到一个TypeError:convert_objects()得到了一个意想不到的关键字参数'convert_numeric。我只是检查了文档,'convert_numeric = True'是正确的参数。思考? – user3347713 2014-11-06 17:14:59