python - 识别熊猫中包含字典的列
问题描述
我有一个类似于以下的数据集:
pd.DataFrame({
'col1': [1,2,3,4,5,6,7],
'col2': ['a','b','c','d','e','f','g'],
'col3': [{'lol':1,'lol2':'a'},{'lol':2,'lol2':'b'},{'lol':4,'lol2':'n'},
{'lol':1,'lol2':'a'},{'lol':1,'lol2':'a'},{'lol':1,'lol2':'a'},
{'lol':1,'lol2':'a'}]})
我正在尝试找到一种方法来识别包含字典的列。在此示例中,它将是 'col3'
理想的输出是列名列表
解决方案
您可以使用列表推导来遍历列并检查每个列中的第一个元素是否是 dict。请注意,这适用于给定的情况,并假设任何包含 dicts 的列仅包含dicts
[i for i in df.columns if isinstance(df[i][0],dict)]
['col3']
推荐阅读
- ubuntu - 在 apk 中使用模块
- node.js - Mongoose 从 .find() 响应中修改单个字段
- open-policy-agent - 如何通过 opa 策略获取图像摘要(sha)
- xamarin - 在 Xamarin.iOS 上重新部署后,框架从应用程序包中删除
- oracle-apex - 从表 APEX 管理 ITEM 配置
- java - 优雅的标签分割方式
- tinybutstrong - TinyButStrong 块不适用于 li 标签
- github - SSH 密钥 - 如何向 github 添加新密钥?
- c# - 在用户控件中更新 ItemsSource 后查看模型项目为 Null
- java - SearchView 不更新项目,只有文本