pandas - Pandas to_dict 类型转换是特定于上下文的
问题描述
我发现对于不同数据帧中相同 dtype 的列,pandas 数据帧类 to_dict 方法的输出是不同的。我有一个数据框,其中所有列的类型均为 int64。此数据帧上的 to_dict 将打印 int64 类型的值。在另一个数据框中有一列 int64 类型和另一列不同类型,在 to_dict 之后的 int64 列值表示为 int 类型。有没有解释为什么这种方法应该产生一个值的表示,该值取决于同一数据帧中其他值的类型?
import pandas as pd
df1 = pd.DataFrame([{'a': 1, 'b': 'str'}])
df2 = pd.DataFrame([{'a': 1, 'b': 2}])
l1 = df1.to_dict(orient='records')
l2 = df2.to_dict(orient='records')
for i in l1:
for k in i:
print(type(i[k]))
for i in l2:
for k in i:
print(type(i[k]))
输出:
<class 'int'>
<class 'str'>
<class 'numpy.int64'>
<class 'numpy.int64'>
理想情况下,我想要一些一致性。不管那可能是什么。提前感谢您的任何见解!
解决方案
推荐阅读
- datetime - 是否有任何“点燃功能”可以从时间戳中提取日期?
- javascript - BxSlider 上的链接在 Google Chrome 中不起作用,但在所有其他浏览器中都起作用
- android - 我有一个数组类型的对象包含一些数据。我想用逗号将它设置为 textview
- android - 通过whatsapp发送消息
- python - 为什么我没有收到 Dialogflow 指定的 RAW API RESPONSE 响应?
- c++ - Eclipse Neon.3 在类型层次结构/调用层次结构中更改颜色
- android - TextView 在相对布局中不起作用
- node.js - 如何使用 req.params 和 join 方法快速发送文件?
- django - `.create()` 方法默认不支持可写嵌套字段。如何解决这个问题?
- javascript - 图表显示动态数据的动画问题