私はdatatable
を持っています。各列は時系列を表しており、時系列ごとの最後のNA値を列順に取得します。私の特定のユースケースでは、私のデータは次のようになります。このうちのだから、data.tableの列ごとに最後の非NA行の値を取得
a b c
1 2 5
1 -17 9
NA 11 4
NA 57 NA
63 NA NA
私が抽出したいと思います:
a b c
63 57 4
私はこれを実現するにはどうすればよいですか?これまでのところ、列ごとではなく最後の非NA行を抽出するという逆の状況に対処する答えしか見られません。
はい。または 'apply(df1,2、function(x)x [max(which is !na(x)))])' –
@akrun、これは行単位で行うことができますか?出力: '5、9、4、57、63'? (これが新しい質問に当てはまるか分かりません) –
@RafaelMartinsおそらく 'do.call(pmax、c(df1、na.rm = TRUE))が必要です。 #[1] 5 9 11 57 63' – akrun