2017-02-16 36 views
-1

我在R中有一個數據框(ID變量除外)只有0-1的值。用指定範圍內的隨機值替換數據幀中的所有值

實施例:

v_11_01  v_11_02  v_11_03  v_11_04  v_11_05 
0.759670859 0.630213804 0.674940162 0.711895064 0.719449533 
0.759670859 0.630213804 0.69626758 0.712106042 0.787841507 
0.759670859 0.630213804 0.69626758 0.712106042 0.787841507 
0.759670859 0.630213804 0.69626758 0.713579989 0.787841507 

我想要替換的所有值(與ID變量除外)與0-1之間隨機產生的值。這樣做的最佳方法是什麼?

+1

試試'DF1 [] < - lapply(DF1,runif)' – akrun

+0

謝謝。這樣可行。 – Joe

+3

'runif'是矢量化的。你可以做'df [] < - runif(prod(dim(df)))'' –

回答

0

我們可以遍歷列並從統一分佈中獲取值。默認情況下,minmax分別爲0和1。

df1[] <- lapply(df1, runif) 

或者使用tidyverse

library(tidyverse) 
df1 %>% 
    mutate_each(funs(runif))