Моя цель - получить новую переменную коэффициентов корреляции (коэффициенты Спирмена), где каждое число соответствует корреляции между двумя рандомизированными переменными.
e.g.
var1=c(1, 2, 3, 0, 2)
var2=c(3, 6, 0, 1, 2)
я пробовал
set.seed(1)
f1=numeric(10000)
for (i in 1:10000) {rand <- replicate(10000, sample(var1))
rand1 <- replicate(10000, sample(var2))
f1[i]=cor(rand, rand1, use ="everything", method=c("spearman"))
}
что дает мне это сообщение: Предупреждение: в f1 [i] = cor (rand, rand1, use = "all", method = c ("spearman")): количество заменяемых элементов не кратно длине замены
Я пробовал это:
cof <- cor((replicate(1000, sample(var1))), (replicate(1000, sample(var2))), use ="everything", method=c("spearman"))
который возвращает матрицу коэффициентов корреляции для каждого значения, а не для каждой переменной
В качестве альтернативы, если есть способ попросить R сопоставить, например строка 1 в одном кадре данных с строкой 1 в другом, затем строки 2, затем строки 3 и т. д. Я могу получить матрицы только моих рандомизированных переменных с помощью этого:
set.seed(1)
f1=numeric(10000)
for (i in 1:10000) {rand <- replicate(10000, sample(var1))
rand1 <- replicate(10000, sample(var2))
}
которые мне тогда пришлось бы соотносить друг с другом
есть ли способ вычислить коэффициент корреляции между каждой парой рандомизированных переменных по мере их создания, а затем создать новую переменную, состоящую из коэффициентов корреляции для каждой рандомизации?
Спасибо