python - JSON 到 Pandas 数据框类型的更改
问题描述
我有来自 python 中 m3inference 包的 JSON 输出,如下所示:
{'input': {'description': 'Bundeskanzlerin',
'id': '2631881902',
'img_path': '/root/m3/cache/angelamerkeicdu_224x224.jpg',
'lang': 'de',
'name': 'Angela Merkel',
'screen_name': 'angelamerkeicdu'},
'output': {'age': {'19-29': 0.0,
'30-39': 0.0001,
'<=18': 0.0001,
'>=40': 0.9998},
'gender': {'female': 0.9991, 'male': 0.0009},
'org': {'is-org': 0.0032, 'non-org': 0.9968}}}
我将其存储在:
org = pd.DataFrame.from_dict(json_normalize(org['output']), orient='columns')
gender.male gender.female age.<=18 ... age.>=40 org.non-org org.is-org
0 0.0009 0.9991 0.0000 ... 0.9998 0.9968 0.0032
我不知道0
第一列中的值来自哪里,我将org.isorg
列保存到 isorg
isorg = org['org.is-org']
但是当我将它附加到熊猫数据框 dtypes is object 时,值更改为
0 0.0032 Name: org.is-org, dtype: float64
不是0.0032
如何解决这个问题?
解决方案
“我不知道第一列中的 0 值来自哪里,然后我将 org.isorg 列保存到 isorg”
该“0”是您的数据框的索引。除非您指定数据框索引,否则 pandas 将自动创建索引。您可以改为更改索引。
代码示例:
org.set_index('gender.male', inplace=True)
索引就像您的数据的地址。这是可以访问数据框或系列中的任何数据点的方式。
推荐阅读
- html - 如何仅在 IE 上忽略特定的 css 类属性
- concurrency - 多线程期间的数据一致性
- spring - 我的控制器的 Spring REST url 是什么?
- mysql - 如何在mysql中选择大量数据?
- shell - Perl 6 的 shell() 使用哪个 shell?
- javascript - 为不同的用户组 kue 多个队列
- xamarin - 将应用程序部署到设备失败
- scala - 火花数据帧中的处理数组[字节]
- c - 使用 fscanf 读取可变数量的整数
- spring-boot - 添加@EnableAuthorizationServer 在服务器启动时引发异常