我不知道是否有一種方法fill
隨機數字使用dcast
(庫reshape2
或data.table
)時,每個單獨的缺失值。例如:R dcast填寫樣本編號
ID = c('AA', 'AA', 'BB', 'BB', 'CC', 'CC', 'CC', 'DD', 'DD')
Replica = c('H1','H3','H1','H2','H1','H2','H3','H2','H3')
Value = c(1.3, 2.5, 1.4, 3.7, 9.5, 7.4, 7.1, 1.8, 8.4)
example <- data.frame(ID=ID, Replica = Replica, Value = Value)
做一個簡單的dcast
dfdc <- dcast(data=example, ID~Replica, value.var = 'Value', fill = sample(1:10, 1))
通知如何某些值被錯過:
ID H1 H2 H3
1 AA 1.3 NA 2.5
2 BB 1.4 3.7 NA
3 CC 9.5 7.4 7.1
4 DD NA 1.8 8.4
我想填滿每個失蹤者的值與隨機數,類似於:
dfdc <- dcast(data=example, ID~Replica, value.var = 'Value', fill = sample(1:10, 1))
其給出作爲結果:
ID H1 H2 H3
1 AA 1.3 2.0 2.5
2 BB 1.4 3.7 2.0
3 CC 9.5 7.4 7.1
4 DD 2.0 1.8 8.4
然而,所有缺失的值被替換爲相同的隨機數(2在這種情況下)。
是否可以將函數單獨應用於每個缺失值,並因此用不同的隨機數填充缺失值?
在此先感謝!