gpt4 book ai didi

python - 如何从 Pandas 的字典列中提取值?

转载 作者:行者123 更新时间:2023-12-02 16:52:53 25 4
gpt4 key购买 nike

我有一个数据框,其中每列 {'value': 2343} 都包含字典。我试图摆脱字典并将单元格设置为等于数据框中所有字典的值。

import pandas as pd
df = pd.DataFrame([
{'node': 'A', 'read': {'value': 2343}, 'write': {'value': 23}},
{'node': 'B', 'read': {'value': 334}, 'write': {'value': 233444}},
])

我可以将单元格设置为一列的值:

df['read'] = df['read'].apply(lambda x: x['value'])

有没有办法在数据框中的所有列上执行此操作?我应该只遍历所有列吗?

预期的输出应该是一个数据框:

df = pd.DataFrame([
{'node': 'A', 'read': 2343, 'write': 23},
{'node': 'B', 'read': 334, 'write': 233444},
])

最佳答案

您可以使用 applymap :

import pandas as pd
df = pd.DataFrame([
{'node': 'A', 'read': {'value': 2343}, 'write': {'value': 23}},
{'node': 'B', 'read': {'value': 334}, 'write': {'value': 233444}},
])

cols = ['read', 'write']
df[cols] = df[cols].applymap(lambda x: x['value'])

print(df)

[Out]:

node read write
0 A 2343 23
1 B 334 233444

关于python - 如何从 Pandas 的字典列中提取值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57629435/

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