これは、昨年このサイトで私のためにうまく答えられた質問へのフォローアップの質問ですR を使用して欠損値の前に列の最後の10個の値の平均を取得する方法を参照してください。
以前、欠損値の前の列の最後の 10 行の平均を取る方法を尋ねました。私のデータは樹木の成長率です。最初の列は年で、右側の列は個々の木の成長率で、各樹木が枯れた年で終わります。各木が「生まれる」前と木が枯れた後の成長率の値はNA
です。各木が枯れるまでの過去 10 年間の平均を取る必要があったとき、機能したコードは次のとおりです。
sapply(dataframe, function(dataframe) mean(tail(na.omit(dataframe), 10)))
後で、各木の寿命の最初の 50 年間の平均成長率を取得する必要があったため、次のコードを使用して「尾」を「頭」に置き換えてこれを行いました。
sapply(dataframe, function(dataframe) mean(head(na.omit(dataframe), 50)))
さて、私の質問は、最初の 50 年から 100 年の成長の間の各木の成長の平均をどのように取るかということです。では、樹齢 50 ~ 100 年の各樹木の平均成長率を知りたいですか? 特定の行間の平均を取ることを可能にする (「頭」または「尾」に似た) 私が知らない関数はありますか? 難しいのは、それぞれの木が別の年に生まれた (または亡くなった) ことです。
ご協力いただきありがとうございます。
ケイティ