같은 이름이지만 여러 데이터 프레임에서 시작되는 길이가 다른 열의 R에서 통계 분석을 일부 수행하려고합니다.목록의 데이터 프레임 열 편집 R
: 나는 'NA'에 의해 대체 단어 대신 숫자 "실패"를 포함 : (my.col는 말) 관심있는 칼럼의 일부 요소로, 지금my.list <- list(df1, df2, df3, df4)
: 나는 목록을 생성
for (i in 1:length(my.list)){
for (j in 1:length(my.list[[i]]$my.col)){
if (my.list[[i]]$my.col[j] %in% c("FAILED"))
{my.list[[i]]$my.col[j] <- 'NA'};
}
}
저는 이것이이 문제에 대한 최선의 해결책은 아니지만 적어도 작동한다는 것을 확신합니다. 다른 열 (my.col이 아님)에 'NA'로 대체 된 유효하지 않은 요소 수준이 있다는 경고가 나옵니다. my.col보다 실제로 다른 열을 고려하는 이유는 알 수 없습니다. 개선을위한 제안은 높이 평가됩니다.
이제 나머지 숫자에는 점 대신 십진수 쉼표가 포함됩니다. "dec =", ""을 사용하여 .csv 파일을 가져 오는 동안이 문제를 없애려고했지만 번호가 아닌 다른 항목 (예 : 'FAILED')이 포함 된 열은 제대로 작동하지 않습니다. 그래서 저는 쉼표를 대신 써야합니다. 그리고 이것은 저에게 맞지 않습니다. 나는 시도했다 :
for (i in 1:length(my.list)){
as.numeric(gsub(",", ".", my.list[[i]]$my.col))
}
이것은 오류가 아니지만, 아무런 변화도주지 않는다.
as.numeric(gsub(",", ".", my.list[[4]]$my.col))
목록의 네 번째 요소에 대해 수행 할 작업을 수행합니다. 내 관점에서 볼 때 둘 다 동일해야합니다. 이게 뭐가 문제 야?
Btw, 나는 다른 분석을 위해 나중에 필요할지도 모르기 때문에 데이터 프레임에서 다른 열을 삭제하지 않는 것을 선호합니다.
gsub는 수정 된 표현식을 반환하므로, 다음과 같이 지정해야합니다. my.list [[i]] $ my.col <- as.numeric (gsub (",", ".", my.list [ i)] $ my.col))' – smu
재현 가능한 예제는 훌륭합니다 (즉, R에 내장 된 데이터를 사용하거나 자신의 데이터를 제공하는 것). –
@smu : 고마워,이 작품! – AnjaM