Для статьи, которую я пишу, я разделил больший набор данных на 3 группы, потому что я думал, что сила корреляции между 2 переменными в этих группах будет отличаться (они сделали). Я хочу посмотреть, повлияет ли подмножество моих данных на случайные группы также на силу корреляций (т. Е. Является ли то, что я вижу, просто эффектом поднабора, или эти группы действительно значимы).
С этой целью я пытаюсь сгенерировать n новых фреймов данных путем случайной выборки 150 строк из существующего набора данных, а затем хочу вычислить коэффициенты корреляции для двух переменных в этих n новые кадры данных, сохраняя коэффициент корреляции и значимость в новом файле.
Но, КАК?
Я могу сделать это вручную, например, с помощью dplyr, что-то вроде
newdata <- sample_n(Random_sample_data, 150)
output <- cor.test(newdata$x, newdata$y, method="kendall")
Я бы, очевидно, не хотел набирать это 1000 или100000 раз, и пытались что-то делать с циклами и лапы (см. Ниже), но они не работали (несомненно, из-за чего-то действительно очевидного, что я скучаю!).
Здесь я попытался присвоить каждой строке отдельную группу из 10 групп, а затем провести корреляции между x и y по следующим группам:
Random_sample_data<-select(Range_corrected, x, y)
cat <- sample(1:10, 1229, replace=TRUE)
Random_sample_cats<-cbind(Random_sample_data,cat)
correlation <- function(c) {
c <- cor.test(x,y, method="kendall")
return(c)
}
b<- daply(Random_sample_cats, .(cat), correlation)
Сообщение об ошибке:
Error in cor.test(x, y, method = "kendall") :
object 'x' not found