gpt4 book ai didi

python - 如何访问 Pandas 中的字典列字段

转载 作者:行者123 更新时间:2023-12-01 23:20:17 24 4
gpt4 key购买 nike

有以下数据框

df = pd.DataFrame([[30, 20, {'some_data': 30}]], columns=['a', 'b', 'c'])

我想创建一个值为 some_data 值的新列。我在想类似的事情:

df['new_column'] = df['c']['some_data']

有什么简单的方法吗?实际上,字典会更复杂,我将不得不获得一个嵌套值。

编辑 1:

这是一个我有嵌套数据的例子,它更接近实际问题。

df = pd.DataFrame([[30, 20, {'some_data': [{'other_data': 0}]}]], columns=['a', 'b', 'c'])
# I would like to do something like:
df['new_column'] = df['c']['some_data'][0]['other_data']

最佳答案

使用 .str 访问器:

df.c.str['some_data']

#0 30
#Name: c, dtype: int64

您可以进一步链接 .str 以进行嵌套数据访问,给定:

df = pd.DataFrame([[30, 20, {'some_data': [{'other_data': 0}]}]], columns=['a', 'b', 'c'])
df
# a b c
#0 30 20 {'some_data': [{'other_data': 0}]}

要访问嵌套的 other_data 字段,您可以:

df.c.str['some_data'].str[0].str['other_data']
#0 0
#Name: c, dtype: int64

关于python - 如何访问 Pandas 中的字典列字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68170724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com