R: como encontrar colunas com todos os valores ausentes


Você pode usar os seguintes métodos para localizar colunas em um quadro de dados em R que contenha todos os valores ausentes:

Método 1: Use Base R

 #check if each column has all missing values
all_miss <- apply(df, 2, function (x) all(is. na (x)))

#display columns with all missing values
names(all_miss[all_miss>0])   

Método 2: use o pacote purrr

 library (purrr)

#display columns with all missing values
df %>% keep(~all(is. na (.x))) %>% names

Ambos os métodos produzem o mesmo resultado, mas a abordagem purrr tende a ser mais rápida para quadros de dados extremamente grandes.

Os exemplos a seguir mostram como usar cada método com o seguinte quadro de dados em R:

 #create data frame
df <- data. frame (points=c(21, 15, 10, 4, 4, 9, 12, 10),
                 assists=c(NA, NA, NA, NA, NA, NA, NA, NA),
                 rebounds=c(8, 12, 14, 10, 7, 9, 8, 5),
                 steals=c(NA, NA, NA, NA, NA, NA, NA, NA))

#view data frame
df

  points assists rebounds steals
1 21 NA 8 NA
2 15 NA 12 NA
3 10 NA 14 NA
4 4 NA 10 NA
5 4 NA 7 NA
6 9 NA 9 NA
7 12 NA 8 NA
8 10 NA 5 NA

Exemplo 1: Encontre colunas com todos os valores ausentes usando Base R

O código a seguir mostra como encontrar colunas no quadro de dados com todos os valores ausentes:

 #check if each column has all missing values
all_miss <- apply(df, 2, function (x) all(is. na (x)))

#display columns with all missing values
names(all_miss[all_miss>0])   

[1] “assists” “steals” 

A partir do resultado, podemos ver que todas as colunas de assistências e interceptações possuem valores ausentes.

Exemplo 2: Encontre colunas com todos os valores ausentes usando o pacote purrr

O código a seguir mostra como encontrar colunas no quadro de dados com todos os valores ausentes usando funções do pacote purrr :

 library (purrr)

#display columns with all missing values
df %>% keep(~all(is. na (.x))) %>% names

[1] “assists” “steals” 

A partir do resultado, podemos ver que todas as colunas de assistências e interceptações possuem valores ausentes.

Isso corresponde à saída do método R base.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns com valores ausentes em R:

Como imputar todos os valores ausentes em R
Como substituir NAs por strings em R
Como substituir NA por Zero no dplyr

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *