python - 读取数据框时获取浮点值
问题描述
我的 csv 文件中有 Sr.no 列,其中包含所有整数值,但会将其作为 pandas 数据框读取,一些整数值会转换为浮点数,为什么?
解决方案
这是类型统治。
检查这个例子:
df = pd.DataFrame([[1, 2], [3, 4]], columns=list('AB'))
A B
0 1 2
1 3 4 <---- ALL INTEGERS
和:
df2 = pd.DataFrame([[np.nan, 6], [7, 8]], columns=list('AB'))
A B
0 NaN 6
1 7.0 8 <-- NOT INTEGER
你可以看到,7 -> 7.0。
和更多:
df.append(df2, ignore_index=True)
A B
0 1.0 2
1 3.0 4
2 NaN 6
3 7.0 8
Pandas 自动定义列的类型。
要更改此设置,请使用pd.read_csv(..., dtype={'PUT_COL_NAME_HERE': PUT_TYPE_HERE})
或pd.astype()
推荐阅读
- node.js - 等待 node.js 直到 Logstash 准备好使用容器
- r - 从字符串距离矩阵中提取最佳匹配
- java - 我如何告诉 cucumber 执行功能文件同时考虑功能标签和场景标签?
- javascript - 位置脚本后下拉列表中的选定值丢失
- spring - Spring Boot Image 上传错误
- javascript - 尝试使用新创建的按钮删除每一行 HTML 元素
- c# - 单词开头的子字符串
- html - 样式 div 为斑马
- machine-learning - 预测连续变量时神经网络的准确性
- android - × 组件 tns-core-modules 未安装。× 组件 tns-android 未安装。× 组件 tns-ios 未安装