У меня есть data.frame
с данными, организованными в 16 столбцах: сначала с именами, вторыми с датами других 14 с метриками.R-программа для расчета некоторых статистических данных
Как:
name date hight weight ....
John 1950 1.81 78
John 1948 1.60 60
Susan 1985 1.40 40 .
Susan 1995 1.45 60
Я хочу, чтобы выполнить некоторые основные статистики (среднее, SD, и т.д.) для каждого имени, то есть: средние высоты Джона, вес и т.д.; имею в виду Сьюзен, рост, вес и т.д.
Для того, чтобы сделать это, сначала я написал функцию:
mysummary <- function(x){
setNames(c(mean(x), sd(x), skewness(x), kurtosis(x)),
c("Mean", "SD", "Skewness", "Kurtosis"))
}
Но когда я исполню ее с помощью команды:
summaryStatic = by(data[,c('height','weight')], list(data$name), function(x){
y <- sapply(x, FUN =mysummary(as.numeric(x)))
return(y)
})
Но Я получил следующее сообщение об ошибке:
Error in mean(x) : (list) object cannot be coerced to type 'double'
Я знаю, что есть несколько связанных с data.frame
структурой. как вы видите, я попытался решить проблему с as.numeric(x)
, но это не сработало.
Как возможно, у вас есть «матрица», созданная символом, датами и цифрами ??? У вас есть 'data.frame' или матрица с ТОЛЬКО символами, содержащими только число и даты (но принужденные к char)? – Michele
Пожалуйста, улучшите свой вопрос - он плохо структурирован и как-то не сфокусирован. Это затрудняет последующее наблюдение и особенно ответит на него. – Jost
Спасибо за комментарий. Матрица данных ... У меня есть .txt-файл, и для его чтения я использовал функцию read.delim. – user2794659