我有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
Run Code Online (Sandbox Code Playgroud)
成为
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
Run Code Online (Sandbox Code Playgroud)
可以试试
indx <- df == 0L
df[indx] <- runif(sum(indx), 0.1, 0.5)
Run Code Online (Sandbox Code Playgroud)