我有一个如下所示的 Dataframe df
,其中包含一列事件-
|events|
|{'id': 109421132110384, 'created_at': datetime.datetime(2022, 11, 28, 11, 12, 50, tzinfo=tzutc()), 'in_reply_to_id': None, 'in_reply_to_account_id': None, 'sensitive': False, 'spoiler_text': '', 'visibility': 'public', 'language': 'en', 'uri': 'https://users/statuses/10942113190455'}|
|{'id': 109421132340384, 'created_at': datetime.datetime(2022, 11, 30, 11, 12, 50, tzinfo=tzutc()), 'in_reply_to_id': None, 'in_reply_to_account_id': None, 'sensitive': False, 'spoiler_text': '', 'visibility': 'public', 'language': 'en', 'uri': 'https://users/statuses/10942113190467'}|
我试过低于approoch-
a= df['events'][0]
print(a['id'])
获取错误:TypeError:字符串索引必须为整数
返回的数据类型-
print(type(df['events'][0]))
<class 'str'>
print(type(df['events']))
<class 'pandas.core.series.Series'>
print(type(df))
<class 'pandas.core.frame.DataFrame'>
我想访问id,created_at,in_reply_to_id,它们位于相同 Dataframe 的新列中,用于每个相应的记录。
请帮忙,先谢谢了。
3条答案
按热度按时间dgjrabp21#
你可以试试这个。
通过
loc()
方法访问第一个元素。然后访问
event
列,最后访问dict的id
键。3yhwsihp2#
您可以使用
.iloc()
来存取数据列,然后指定数据行名称:输出量:
ru9i0ody3#
您的“事件”列是字典的打印表示形式,而不是字典。
一个丑陋的解决方案是Mapeval来创建一个新列。确保首先导入datetime。
解析后,您可以将内容视为字典。最好是重新访问原始数据是如何生成的。
下面是一个示例...
生成字典...