Я пытаюсь сгенерировать функцию для вычисления корреляции между переменными age
и views
во фрейме данных data
для каждой категории gender
.
Мой фрейм данных называется tv_viewing
с 5 столбцами: adhd
(число c), sex
(коэффициент, мальчик / девочка), famsize
(коэффициент с 4 уровнями (1 ребенок, 2 ребенка, 3 ребенка, 4 + ребенок), age
(число c) и views
(число c, количество просмотров телевизора).
Я получил это далеко:
partcorr <- function(tv_viewing, age, views, sex) {
corrs <- list()
for(i(tv_viewing[,sex])) {
corrs[i] <- round(sex(tv_viewing[tv_viewing[,sex] == i, age], tv_viewing[tv_viewing[,sex] == i, views], method = "pearson"), digits = 2)
}
return()
}
Или, в более общем смысле,
partcorr <- function(data, x, y, cat) {
corrs <- list()
for(i in levels(data[,cat])) {
corrs[i] <- round(cor(data[data[,cat] == i, x], data[data[,cat] == i, y], method = "pearson"), digits = 2)
}
return()
}
Но это не работает. Что я делаю не так?