我有以下数据帧:
mydf = pandas.DataFrame({"cat": ["first", "first", "first", "second", "second", "third"], "class": ["A", "A", "A", "B", "B", "C"], "name": ["a1", "a2", "a3", "b1", "b2", "c1"], "val": [1,5,1,1,2,10]})
我想创建一个数据框,用于生成有关的摘要统计信息 val
具有相同的项目列 class
ID。为此,我使用 groupby
如下:
mydf.groupby("class").val.sum()
这是正确的行为,但我想保留 cat
结果df中的列信息。可以这样做吗?我一定要吗 merge/join
以后的那些信息?我试过了:
mydf.groupby(["cat", "class"]).val.sum()
但这使用分层索引。我想要一个简单的数据帧,只有 cat
每个组的值,其中group by class
。输出应该是一个数据帧(而不是系列),其值为cat和class,其中 val
条目在具有相同条目的每个条目上求和 class
:
cat class val
first A 7
second B 3
third C 10
这可能吗?