Як видалити рядки з нулями в r (з прикладом)


Ви можете використовувати будь-який із наведених нижче методів, щоб видалити рядки, що містять нулі, у кадрі даних у R:

Спосіб 1: Видалення рядків, що містять нулі, за допомогою основи R

 df_new <- df[apply(df!= 0 , 1 , all),]

Спосіб 2: Видалення рядків, що містять нулі, за допомогою dplyr

 library (dplyr)

df_new <- filter_if(df, is.numeric , all_vars((.) != 0 ))

У наведених нижче прикладах показано, як використовувати кожен метод на практиці з таким кадром даних:

 #create data frame
df <- data. frame (points=c(5, 7, 8, 0, 12, 14, 0, 10, 8),
                 assists=c(0, 2, 2, 4, 4, 3, 7, 6, 10),
                 rebounds=c(8, 8, 7, 3, 6, 5, 0, 12, 11))

#view data frame
df

  points assists rebounds
1 5 0 8
2 7 2 8
3 8 2 7
4 0 4 3
5 12 4 6
6 14 3 5
7 0 7 0
8 10 6 12
9 8 10 11

Приклад 1: Видалення рядків, що містять нулі, за допомогою основи R

Наступний код показує, як видалити рядки, що містять нулі, за допомогою функції R base apply() :

 #create new data frame that removes rows with any zeros from original data frame
df_new <- df[apply(df!= 0 , 1 , all),]

#view new data frame
df_new

  points assists rebounds
2 7 2 8
3 8 2 7
5 12 4 6
6 14 3 5
8 10 6 12
9 8 10 11

Зверніть увагу, що три рядки, що містять нульові значення, були видалені.

Приклад 2: видаліть рядки, що містять нулі, за допомогою dplyr

Наступний код показує, як видалити рядки, що містять нулі, за допомогою функції filter_if() із пакета dplyr у R:

 #create new data frame that removes rows with any zeros from original data frame
df_new <- filter_if(df, is.numeric , all_vars((.) != 0 ))

#view new data frame
df_new

  points assists rebounds
1 7 2 8
2 8 2 7
3 12 4 6
4 14 3 5
5 10 6 12
6 8 10 11

Зверніть увагу, що три рядки, що містять нульові значення, були видалені.

Це відповідає результату, який ми отримали за допомогою бази R.

Примітка : ми використали функцію is.numeric , щоб вказати, що всі числові змінні у кадрі даних мають бути ненульовими.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як видалити порожні рядки з кадру даних у R
Як видалити стовпці зі значеннями NA в R
Як видалити повторювані рядки в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *