gpt4 book ai didi

Python:如何从大字典中存在的 2 个键生成 DataFrame

转载 作者:行者123 更新时间:2023-12-04 08:34:24 25 4
gpt4 key购买 nike

我目前正在使用如下所示的字典 D:

D = {
'Instagram': [{'total_post': 3}],
'Twitter': [{'total_post': 9}],
'Facebook': [{'total_post': 1}],
'YouTube': [{'total_post': 5}]
}
我想用这种结构制作一个DataFrame:
          total_post
Instagram 3
Twitter 9
Facebook 1
YouTube 5
我想我需要使用 key (Instagram、Twitter、Facebook、YouTube、total_post)来制作所需的 DataFrame,但目前我在寻找如何做到这一点时遇到了问题。这是我当前的代码,返回 final_df :
list_dataframe = [] #populate dictionary values to a list
for key, values in D.items():
df = pd.DataFrame(values)
list_dataframe.append(df)

# combine dataframe
indexed_df = [df.set_index(index) for df in list_dataframe] #my current index = total_post
final_df = pd.concat(indexed_df, axis=1)
final_df.fillna(0, inplace=True)
这是 list_dataframe当前结果:
[   total_post
0 3, total_post
0 9, total_post
0 1, total_post
0 5]
拿 key 怎么办?或者,有没有更好的方法来处理字典 D?

最佳答案

使用列表理解来选择嵌套列表的第一个值和键 total_post :

df = pd.DataFrame([v[0]['total_post'] for k, v in D.items()], 
index=D.keys(),
columns=['total_post'])
print (df)
total_post
Instagram 3
Twitter 9
Facebook 1
YouTube 5
或使用 DataFrame.from_dict :
df =  pd.DataFrame.from_dict({k:v[0] for k, v in D.items()}, orient='index')
print (df)
total_post
Facebook 1
Instagram 3
Twitter 9
YouTube 5

关于Python:如何从大字典中存在的 2 个键生成 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64869731/

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