Pandas 数据框二级列名求和:如何计算 'max' 列每行值的总和?
Pandas 如何计算二级列名为 'max' 的每行值的总和?
假设你有一个包含二级列名的数据框,并且你想要计算二级列名为 'max' 的每一行的值相加。你可以使用 Pandas 的 groupby 和 sum 函数轻松实现。
假设你的数据框名为 df,请按照以下步骤操作:
-
使用
groupby函数按照一级列名对数据框进行分组。df.groupby(level=0, axis=1)这将返回一个
DataFrameGroupBy对象,该对象允许你对每个分组执行聚合操作。 -
使用
sum函数对每个分组中的 'max' 列求和。df.groupby(level=0, axis=1).sum()['max']这将返回一个包含每一行 'max' 列值的 Series。
-
(可选)将 Series 转换为新的数据框。 如果你想要将结果保存为新的数据框,可以使用
to_frame函数:df.groupby(level=0, axis=1).sum()['max'].to_frame()这将创建一个包含一列名为 'max' 的数据框,其中包含每行的 'max' 列值之和。
示例:
假设你有以下数据框:
HP Attack Defense
max min mean max min mean max min mean
Type 1
Bug 86 1 56.884058 185 10 70.971014 230 30 70.724638
Dark 126 35 66.806452 150 50 88.387097 125 30 70.225806
Dragon 125 41 83.312500 180 50 112.125000 130 35 86.375000
运行上述代码后,你将得到以下结果:
Type 1
Bug 491
Dark 301
Dragon 335
Name: max, dtype: int64
原文地址: https://www.cveoy.top/t/topic/futE 著作权归作者所有。请勿转载和采集!