2016-04-20 21 views
0

私は現在、CSVを介してアップロードされたデータフレームに対応できるように、特定の動作待ち時間計算をオンラインで記述して展開するプロジェクトに取り組んでいる初心者です。この分析では、N個の列の平均を(つまり、同じ行内で)1人で(つまり、同じ行内で)取って、すべての回答者に対して繰り返す必要があります。Python:行のサブセットの行ベース平均

この計算を実行する特定のインスタンスをどのようにして一般的な関数にすると、アップロードされたデータフレームにもっと一般的に適用できるのでしょうか。例えば、どのように行ベースの平均計算は、以下の属性/列のN数で動作するように書くことができます。

data['PersonalAverage'] = (data[[2]] + data[[4]] + data[[6]] + data[[8]] + data[[10]] + data[[12]] + data[[14]] + data[[16]] + data[[18]] + data[[20]] + data[[22]] + data[[24]] + data[[26]] + data[[28]] + data[[30]] + data[[32]] + data[[34]])/17 

私が(代わりに17の)唯一の5属性でCSVをアップロードした場合。

誰でも正しい方向に向けることができますか?

+0

numpyを使用しない理由は何ですか?特定の行を選択するための平均的な機能と機能が付属しています。 –

答えて

0

このような目的でdata.meanを使用できます。

In [3]: df 
Out[3]: 
    a b c d 
0 1 2 3 4 
1 4 5 6 7 
2 2 4 6 8 
3 3 2 1 4 
4 0 1 2 4 

In [4]: cols = ['a', 'b', 'd'] # Columns to consider for average 

In [5]: df['mean'] = df[cols].mean(axis=1) 

In [7]: df 
Out[7]: 
    a b c d  mean 
0 1 2 3 4 2.333333 
1 4 5 6 7 5.333333 
2 2 4 6 8 4.666667 
3 3 2 1 4 3.000000 
4 0 1 2 4 1.666667