나는이 오류 님에게 메일 및 역 추적지고있어 :에만 모든 숫자 변수와 데이터 프레임에 정의
Error in FUN(X[[i]], ...) :
only defined on a data frame with all numeric variables
5 stop("only defined on a data frame with all numeric variables")
4 FUN(X[[i]], ...)
3 lapply(args, function(x) {
x <- as.matrix(x)
if (!is.numeric(x) && !is.complex(x))
stop("only defined on a data frame with all numeric variables") ...
2 Summary.data.frame(structure(list(Date = structure(c(279L, 285L,
291L, 297L, 303L, 315L, 321L, 327L, 333L, 339L, 345L, 357L, 363L,
369L, 375L, 387L, 393L, 399L, 405L, 417L, 423L, 429L, 435L, 441L,
447L, 453L, 477L, 501L, 555L, 561L, 567L, 573L, 579L, 585L, 591L, ...
1 corr("specdata")
을
내 연구 결과에 따르면 데이터 세트에 숫자가 아닌 데이터가 있다는 의미입니다. 제가 사용하고있는 데이터 세트는 Coursera 코스에서 가져온 것이고, 그렇다면 다른 사람들도 제가 생각한 것과 같은 문제를 겪고 있다고 가정 할 것입니다. 그러나 토론에서 어떤 언급도없는 것 같습니다. 보드 또는 유사한 문제의 온라인.
corr <- function(directory, threshold = 0) {
vect1 <- numeric()
files_list <- list.files(directory, full.names = TRUE)
for (i in 1:332) {
data <- read.csv(files_list[i])
good <- complete.cases(data)
complete_data <- data[good,]
sulfate <- complete_data[,2]
nitrate <- complete_data[,3]
if (sum(complete_data) >= threshold) {
b <- cor(sulfate,nitrate)
vect1 <- rbind(b)
}
else vect1 <- (numeric())
}
return(vect1)
}
오류 메시지에서
와 상관 관계가 황산 및 질산에서 실행중인 때 오류가 발생하는 "생각"역 추적 : 내 유일한 추측은 아래 내 기능 코드의 결과라는 것이다 열. 디렉토리의 첫 번째 파일에서 코드를 실행하면 오류 메시지없이 정상적으로 실행됩니다. 이 오류가 발생하는 이유와 해결 방법에 대한 도움이나 통찰력이 도움이 될 것입니다.
나는 숫자 인으로 데이터 집합을 강요하는 것을 시도했다 -
complete_data <- as.numeric(data[good,])
을하지만 난 다시 다른 오류 메시지 "오류 : (목록) 개체가 '더블'입력 강요 할 수 없다"
인자로 'nitrate'또는 'sulfur'가 읽혀 지거나 if 문이 숫자가 아닌 값이 포함 된 data.frame의 합계를 취하려고 시도하는 것일 수 있습니다. 아마도 catch가'if (nrow (complete_data)> = threshold)'일 것입니다. –
Tad 감사합니다 - 실제로 오류 메시지를 일으키는 문제가있었습니다! 당신의 도움을 주셔서 감사합니다! –