gpt4 book ai didi

python - 如何在 Pandas 中附加两个或多个数据框并进行一些分析

转载 作者:太空宇宙 更新时间:2023-11-04 04:47:59 35 4
gpt4 key购买 nike

我有 3 个 df:

df1=pd.DataFrame({"Name":["one","two","three"],"value":[4,5,6]})
df2=pd.DataFrame({"Name":["four","one","three"],"value":[8,6,2]})
df3=pd.DataFrame({"Name":["one","four","six"],"value":[1,1,1]})

我可以一个接一个地追加,但我想一次追加所有三个数据帧并进行一些分析。

我正在尝试计算名称包含在多少数据帧除以总数据帧数据帧中存在的名称/总数据帧

我想要的输出是,

 Name  value   Count
one 11 1
two 5 0.333
three 8 0.666
four 9 0.666
six 1 0.333

请帮忙,提前致谢!

最佳答案

使用:


dfs = [df1, df2, df3]
df = pd.concat(dfs)

df1 = df.groupby('Name')['value'].agg([('value', 'sum'), ('Count', 'size')]).reset_index()
df1['Count'] /= len(dfs)

类似的解决方案:

df1 = (pd.concat(dfs)
.groupby('Name')['value']
.agg([('value', 'sum'), ('Count', 'size')])
.assign(Count = lambda x: x.Count /len(dfs))
.reset_index())

print (df1)
Name value Count
0 four 9 0.666667
1 one 11 1.000000
2 six 1 0.333333
3 three 8 0.666667
4 two 5 0.333333

关于python - 如何在 Pandas 中附加两个或多个数据框并进行一些分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49067073/

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