0

我是熊猫数据分析库的新手。我需要完成的任务如下:

给定具有一组列的数据框(表)C,选择列子集中的值A相同的所有行,并将它们组合成单行,其中其他行的值C \ A是平均的。

(目标是测试程序的多次运行,并在参数相同的情况下平均运行时间等值。)

例如:

a       b       c       d
eggs    ham     1.0     0.0
eggs    ham     0.0     0.5
spam    eggs    0.0     1.0
spam    eggs    0.0     1.0

应合并为:

a       b       c       d
eggs    ham     0.5     0.25
spam    eggs    0.0     1.0

选择列时和ab这意味着应该平均)。cd

我有哪些选择?

4

1 回答 1

6

这就是 groupby 所做的

http://pandas.pydata.org/pandas-docs/stable/groupby.html

from StringIO import StringIO

txt = """a       b       c       d
eggs    ham     1.0     0.0
eggs    ham     0.0     0.5
spam    eggs    0.0     1.0
spam    eggs    0.0     1.0"""

df = pd.read_csv(StringIO(txt), sep="\\s+")
df.groupby(["a","b"], as_index=False).mean()
于 2013-02-28T12:26:18.243 回答