我的数据框有0个值,我想将每个零转换为0.1到0.5之间的随机值
X2 X3 X4 X5
390 0 0.000 0.00 0.00
7433 0 27.839 0.00 0.00
5579 0 0.000 151.95 0.00
是
X2 X3 X4 X5
390 0.1 0.200 0.43 0.29
7433 0.3 27.839 0.24 0.30
5579 0.4 0.200 151.95 0.50
答案 0 :(得分:9)
可以尝试
indx <- df == 0L
df[indx] <- runif(sum(indx), 0.1, 0.5)