<p>您希望使用接受<code>axis</code>参数的内置<code>mean()</code>函数来指定行方式。由于您知道所需的不同方法的特定列名约定,因此可以使用下面的示例代码非常高效地执行该约定。在这里,我选择只制作两个额外的列,而不是实际销毁现有的数据。我还可以将这些新列放入一个新的数据框架中;这取决于您的需要和方便之处。在这两种情况下,同样的基本思想都会起作用。</p>
<pre><code>In [1]: import pandas
In [2]: dfrm = pandas.DataFrame([[1,2,3,4,5,6],[7,8,9,10,11,12],[13,14,15,16,17,18]], columns = ['A_1', 'A_2', 'A_3', 'B_1', 'B_2', 'B_3'])
In [3]: dfrm
Out[3]:
A_1 A_2 A_3 B_1 B_2 B_3
0 1 2 3 4 5 6
1 7 8 9 10 11 12
2 13 14 15 16 17 18
In [4]: dfrm["A_mean"] = dfrm[[elem for elem in dfrm.columns if elem[0]=='A']].mean(axis=1)
In [5]: dfrm
Out[5]:
A_1 A_2 A_3 B_1 B_2 B_3 A_mean
0 1 2 3 4 5 6 2
1 7 8 9 10 11 12 8
2 13 14 15 16 17 18 14
In [6]: dfrm["B_mean"] = dfrm[[elem for elem in dfrm.columns if elem[0]=='B']].mean(axis=1)
In [7]: dfrm
Out[7]:
A_1 A_2 A_3 B_1 B_2 B_3 A_mean B_mean
0 1 2 3 4 5 6 2 5
1 7 8 9 10 11 12 8 11
2 13 14 15 16 17 18 14 17
</code></pre>