2017-12-06 9 views
1

私は大きな計算の一部として平均計算を含めることを試みています。考え方は、列内の一連の値から平均を計算することですが、すべての列ではありません。R - カラムセクションの平均関数

は例えば、yFilecolumn_x(10エントリ)から、最後の4つの値の平均を計算します。

column_x 
1 
5 
8 
3 
0 
3 
3 
7 
9 
9 

Result = 7 

これは私が持っているものです:

avg_subx <- mean(yFile$column_x, 7:10, trim = 0, na.rm = FALSE) 

しかし、いくつかのために理由、私が戻ってきた結果は正しい値ではありません。 どこに間違っているのかを知る手伝いをしてもらえますか?

ありがとうございます!

+1

'mean(yFile $ column_x [(nrow(yFile) - 3):nrow(yFile)])' – Zach

+0

問題は、行の制限を認識しておらず、列全体を最後の4つのエントリに平均を制限する方法についてのアドバイスはありますか?ありがとう! – EBB

+0

貼り付けたコードを使用すると、動作します。 – Zach

答えて

2

tail機能で試してみましたか? tailでは、最後のnの値をdata frameまたはvectorにすることができます。

:あなたはラス4値を選択している。この場合

avg_subx <- mean(tail(yFile$column_x,4)) 

希望があなたを助けることができます!

+0

私は実際にポジションを指定できるようにしたかったのです。実際のデータセットでは、必ずしも最後の4つに対応していませんが、これは他の状況で非常に役立ちます。ありがとう! – EBB

+0

この場合、 'ベクトル'に次のようにインデックスを付ける必要があります: 'avg_subx < - 平均(yFile $ column_x [c(1,5,7,8)]' –