gpt4 book ai didi

python - 在 Pandas 中跨多个数据帧进行操作时保留行顺序

转载 作者:行者123 更新时间:2023-12-01 04:06:30 24 4
gpt4 key购买 nike

我正在 Pandas 中生成大量相关数据帧。它们都具有相同的形状和格式。所以这是数据框 A:-

             free_memory       memory_in_use     active_memory
free_memory 1 0.190912742 0.375301656
memory_in_use 0.190912742 1 0.962653384
active_memory 0.375301656 0.962653384 1

这是数据框 B:-

                free_memory         memory_in_use   active_memory
free_memory 1 0.673434243 0.712713697
memory_in_use 0.673434243 1 0.991687459
active_memory 0.712713697 0.991687459 1

当我得到一个数据帧 C ,使其所有单元格都是 A 和 B 中相应单元格的平均值时,Pandas 会混合行的顺序。例如,结果 C 如下所示:-

                  free memory  memory in use  active memory
active memory 0.296996 0.960049 1.000000
free memory 1.000000 0.520667 0.296996
memory in use 0.520667 1.000000 0.960049

如您所见,列顺序被保留,但行顺序被提高,并且我没有得到漂亮的对角线 1。如何保持输入数据帧中的顺序相同?执行此操作的相关代码是:-

df_concat.groupby(df_concat.index).mean()

最佳答案

您可以向函数 groupby 添加参数 sort=False :

print df_concat.groupby(df_concat.index, sort=False).mean()
free_memory memory_in_use active_memory
free_memory 1.000000 0.190913 0.375302
memory_in_use 0.190913 1.000000 0.962653
active_memory 0.375302 0.962653 1.000000

Docs :

sort : boolean, default True

Sort group keys. Get better performance by turning this off. Note this does not influence the order of observations within each group. groupby preserves the order of rows within each group.

关于python - 在 Pandas 中跨多个数据帧进行操作时保留行顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35511350/

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