Я хочу иметь несколько копий кадра данных, но каждый раз с новой рандомизацией переменной. Моя цель заключается в том, чтобы сделать несколько итераций анализа со случайным значением для одной переменной.Рандомизация столбца в списке dataframe
Я начал, делая список dataframe, копии моей оригинальной dataframe:
a <- c(1, 2, 3, 4, 5)
b <- c(45, 34, 50, 100, 64)
test <- data.frame(a, b)
test2 <- lapply(1:2,function(x) test) #List of 2 dataframe, identical to test
Я знаю о преобразующих и образца, для рандомизации значений столбца:
test1 <- transform(test, a = sample(a))
Я просто не могу найти, как применить его ко всему списку данных. Я пробовал:
test3<- lapply(test2,function(i) sample(i[["a"]]))
Но я потерял другие переменные. И это:
test3 <- lapply(test2,function(i) {transform(i, i[["a"]]==sample(i[["a"]]))})
Но моя переменная не рандомизирована.
Несколько вопросов похожи на мои, но не помогло мне решить мою проблему:
Adding columns to each in a list of dataframes
Add a column in a list of data frames
Все эти работы чудесно! Спасибо. – Emilie