NAを省略したグループの最後の要素を取得する方法を探しています。標準のdplyr解決策は動作していません。固定する予定が明確ではありません。issueグループの最後の要素を省略します。NA - dplyr
誰かが回避策を提案できますか?ここで
は、私はので、私はCOL_1」でグループ化した後COL_1によると、グループのリターン1とグループBのリターン3
NAを省略したグループの最後の要素を取得する方法を探しています。標準のdplyr解決策は動作していません。固定する予定が明確ではありません。issueグループの最後の要素を省略します。NA - dplyr
誰かが回避策を提案できますか?ここで
は、私はので、私はCOL_1」でグループ化した後COL_1によると、グループのリターン1とグループBのリターン3
一つの方法は、を使用することですその後、
df %>% group_by(col_1) %>% summarise(last=tail(na.omit(col_2),1))
col_1 last
<fctr> <dbl>
1 A 1
2 B 3
それとも、あなたのデータフレームをfilter
ことができ、slice
グループごとの最後の行::とtail
df %>% filter(!is.na(col_2)) %>% group_by(col_1) %>% slice(n())
のためのグループたい
df <- DataFrame(col_1 = c('A', 'A', 'B', 'B'), col_2 = c(1, NA, 3, 3))
を探しています何の例です。 」、それを行うにはarrange
論理ベクトルis.na(col_2)
とslice
に最初の要素を使用して
library(dplyr)
df %>%
group_by(col_1)%>%
arrange(is.na(col_2)) %>%
slice(1)
# A tibble: 2 x 2
# Groups: col_1 [2]
# col_1 col_2
# <fctr> <dbl>
#1 A 1
#2 B 3
はありがとうございました! 'arrange(is.na(col_2))'は私にとってとても新しいものです。私は私の質問に不満を述べました。私は各グループの最後の非NA要素が必要です。ラミアはすでに質問に答えましたが、素晴らしい例をありがとう! – user1700890
ありがとうございました! '最後の(na.omit(col_2))'と 'col_2 [!is(col_2)]'はうまくいかないのに面白いですが、 'tail'はやっています! – user1700890