2017-02-16 2 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 

Я хочу, чтобы заменить все значения (за исключением идентификационных переменных) со случайным образом генерировать значения между 0-1. Каков наилучший метод для этого?

+1

попробовать 'df1 [] <- lapply (df1, runif)' – akrun

+0

Спасибо. Это работает. – Joe

+3

'runif' - векторный. Вы можете просто выполнить 'df [] <- runif (prod (dim (df)))' –

ответ

0

Мы можем проходить через столбцы и получать значения из равномерного распределения. По умолчанию min и max равны 0 и 1 соответственно.

df1[] <- lapply(df1, runif) 

Или с помощью tidyverse

library(tidyverse) 
df1 %>% 
    mutate_each(funs(runif)) 
Смежные вопросы