当前,我的列是对象类型,并且我正在尝试将其转换为数字类型。 但由于其中包含特殊字符和字符串,因此显示了错误。
错误:
ValueError: Unable to parse string "7`" at position 3298
代码:
data['col1']=pd.to_numeric(data.col1)
因此,我想从只需要数字和col1作为其中之一的列中删除特殊的char和string。 有建议的解决方案吗?
答案 0 :(得分:2)
将str.replace
与正则表达式一起使用。
例如:
df = pd.DataFrame({"col1": ["7`", "123", "AS123", "*&%3R4"]})
print(pd.to_numeric(df['col1'].str.replace(r"[^\d]", "")))
输出:
0 7
1 123
2 123
3 34
Name: col1, dtype: int64