데이터 프레임의 선택한 열에 NA(누락) 값이 포함된 행의 부분 집합
CSV 파일의 데이터 프레임이 있습니다. 프레임은 다음과 같습니다.DF
과 열으)로 표시된 열이 .VaR2
측정을 수행한 날짜를 포함합니다.되지 않은 값 " " " " " " " " " " " " " " 이 포함되어 .NA
누락된 데이터의 경우.
Var1 Var2
10 2010/01/01
20 NA
30 2010/03/01
하여 새로운 을 정의하고자 .new_DF
는 " ▁that▁an"가 있는 .NA'
값( 값( 값▁value열VaR2
이 주진행예 2만새행에 DF
.
명령어
new_DF<-subset(DF, DF$Var2=="NA")
작동하지 않습니다. 결과 데이터 프레임에 행 항목이 없습니다.
에서 Value가 CSV일 NA
됩니다.NULL
동일한 명령을 사용하면 원하는 결과가 생성됩니다.
new_DF <- subset(DF, DF$Var2=="NULL")
문자열에 대한 값이 다음과 같은 경우 이 메서드가 작동하도록 하려면 어떻게 해야 합니까?NA
원본 CSV 파일에 제공됩니까?
==를 절대 사용하지 마십시오.'결측값을 테스트하려면 'NA'를 선택합니다.사용하다is.na()
됩니다이렇게 하면 됩니다.
new_DF <- DF[rowSums(is.na(DF)) > 0,]
또는 특정 열을 확인하려는 경우에는 를 사용할 수도 있습니다.
new_DF <- DF[is.na(DF$Var),]
NA 문자 값이 있는 경우 먼저 실행
Df[Df=='NA'] <- NA
결측값으로 대체합니다.
complete.cases
, 주다, 주다, 주다, 주다, 주다, 주다, 주다, 주다, 주다.TRUE
이 행의모값이다음값때아이닐든때▁all▁not가 아닐 때NA
DF[!complete.cases(DF), ]
NA는 R의 특수 값이므로 "NA" 문자열과 NA 값을 혼동하지 마십시오.데이터를 가져온 방법에 따라 "NA" 및 "NULL" 셀은 다양한 유형일 수 있습니다(기본 동작은 "NA" 문자열을 NA 값으로 변환하고 "NULL" 문자열은 그대로 유지).
read.table() 또는 read.csv()를 사용하는 경우 "na.strings" 인수를 고려하여 데이터를 정리하고 항상 실제 RNA 값으로 작업해야 합니다.
예: "NULL" 및 "NA" 셀 모두에서 작업:
DF <- read.csv("file.csv", na.strings=c("NA", "NULL"))
new_DF <- subset(DF, is.na(DF$Var2))
new_data <- data %>% filter_all(any_vars(is.na(.)))
은 새로운 프레임을 .new_data
에 결측값만 포함됩니다.
결측 관측치(NA)가 있는 일부 열이 있기 때문에 나중에 삭제할 수 있는 값을 추적하는 데 가장 적합합니다.
변경해 보십시오.
new_DF<-dplyr::filter(DF,is.na(Var2))
때부터dplyr
s filter_all
되었습니다.
범위 동사(_if,_at,_all)는 다음과 같이 대체되었습니다.
across()
기존 동사로
의사법의 .across()
filter()
권장되지 않습니다. 로낙 폴의 답변은 약간의 업데이트가 필요합니다.사용하여 모든 행을 찾으려면NA
어디서든, 우리는 사용할 수 있습니다.
library(dplyr)
DF %>%
filter(if_any(everything(), is.na))
갖기 위해
# A tibble: 1 x 2
Var1 Var2
<dbl> <date>
1 20 NA
NA 데이터가 있는 모든 행을 인쇄합니다.
tmp <- data.frame(c(1,2,3),c(4,NA,5));
tmp[round(which(is.na(tmp))/ncol(tmp)),]
언급URL : https://stackoverflow.com/questions/7980622/subset-of-rows-containing-na-missing-values-in-a-chosen-column-of-a-data-frame
'sourcetip' 카테고리의 다른 글
장고에서 "get_or_create()"를 사용하는 방법은 무엇입니까? (0) | 2023.06.17 |
---|---|
Android에서 전체 화면 활동? (0) | 2023.06.17 |
머리글을 맨 위 행으로 바꾸기 (0) | 2023.06.17 |
R에서 %>% 함수는 무엇을 의미합니까? (0) | 2023.06.17 |
루비 코드를 어떻게 문서화합니까? (0) | 2023.06.17 |