python - 如何解决 Dataframe to_numeric 错误(Python)?
问题描述
我有包含浮点数的数据框。我想将数字运算作为 sum mult。ETC。 。列类型是对象。所以我必须将此列更改为数字列。我使用 to_numeric 函数,但它给了我 NaN 结果。
我怎么解决这个问题?
代码 :
#import libraries
import pandas as pd
data = pd.read_csv('file.csv', engine='python', delimiter=';')
#change object columns into a numeric columnn
for i in data.columns :
data[i] = pd.to_numeric(data[i], errors='coerce')
数据框
t0 (actual) t0 t0,lower t0,upper
0 11861,6318726842 0 0 0
1 4761,43316 5709,1728515625 3776,725188260803 7939,908970830105
2 36,22841951973635 0 0 0
3 583,3716479196096 0 0 0
4 25087,16436661841 26040,7890625 21825,20941707611 31905,394350044822
....
结果 :
t0 (actual) t0 t0,lower t0,upper
0 NaN NaN NaN NaN
1 NaN NaN NaN NaN
2 NaN NaN NaN NaN
3 NaN NaN NaN NaN
4 NaN NaN NaN NaN
解决方案
我无法重现您的错误,但我假设您可以添加decimal=","
到pd.read_csv
.
从文档:
decimal : str, 默认 '.'<br /> 识别为小数点的字符(例如,使用 ',' 表示欧洲数据)。
所以你的代码看起来像这样:
#import libraries
import pandas as pd
data = pd.read_csv('file.csv', engine='python', delimiter=';', decimal=",")
#change object columns into a numeric columnn
for i in data.columns :
data[i] = pd.to_numeric(data[i], errors='coerce')
推荐阅读
- apiary.io - Apiary Cloud Console - IP 白名单
- ember.js - 如何在 Ember Octane 中更新嵌套状态
- ruby-on-rails - 防止设计中的多个会话跨模型
- r - R 水平堆积百分比图
- string - 删除多余的字符串而不循环
- python - Python while 循环未按预期工作
- linux - 在lldb调试器中,为什么程序计数器会倒退?
- vulkan - 如何让 Vulkan API 在 Google Colab 中工作
- javascript - 请求正文正在记录为 [Object Object],我无法从中获取数据
- python - 当所有多个客户端都关闭连接时,如何关闭 Python 套接字服务器?