我有這樣填充缺失數據中的R
pos value
1 20
2 30
4 50
5 50
9 30
的數據集你會注意到,3, 6,7,8
位置和相應的值項丟失。我想,以填補他們與相應的值設置爲0,這樣的數據看起來像這樣
pos value
1 20
2 30
3 0
4 50
5 50
6 0
7 0
8 0
9 30
如何R中實現這一目標的任何想法?
我有這樣填充缺失數據中的R
pos value
1 20
2 30
4 50
5 50
9 30
的數據集你會注意到,3, 6,7,8
位置和相應的值項丟失。我想,以填補他們與相應的值設置爲0,這樣的數據看起來像這樣
pos value
1 20
2 30
3 0
4 50
5 50
6 0
7 0
8 0
9 30
如何R中實現這一目標的任何想法?
我們可以使用complete
從tidyr
library(tidyr)
df1 %>%
complete(pos = full_seq(pos, 1), fill = list(value=0))
# A tibble: 9 × 2
# pos value
# <dbl> <dbl>
#1 1 20
#2 2 30
#3 3 0
#4 4 50
#5 5 50
#6 6 0
#7 7 0
#8 8 0
#9 9 30
如果我們想繼續下去,直到20
df1 %>%
complete(pos = full_seq(c(pos,20), 1), fill = list(value=0))
了'merge'可能? 'merge(data.frame(pos = min(df $ pos):max(df $ pos)),df,all.x = TRUE)' –