Select_if'i dplyr'de birden çok koşulla kullanma


Çeşitli koşullardan birini karşılayan bir veri çerçevesindeki sütunları seçmek için dplyr paketinin select_if() işleviyle aşağıdaki temel sözdizimini kullanabilirsiniz:

 df %>% select_if( function (x) condition1 | condition2)

Aşağıdaki örnekler bu sözdiziminin pratikte nasıl kullanılacağını göstermektedir.

Örnek 1: Select_if() işlevini sınıf türleriyle kullanma

Aşağıdaki kod, bir veri çerçevesinde karakter veya sayısal sınıf türüne sahip sütunları seçmek için select_if() işlevinin nasıl kullanılacağını gösterir:

 library (dplyr)

#create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                 conference=as. factor (c('W', 'W', 'W', 'E', 'E')),
                 points_for=c(99, 90, 86, 88, 95),
                 points_against=c(91, 80, 88, 86, 93))

#select all character and numeric columns
df %>% select_if( function (x) is. character (x) | is. numeric (x))

  team points_for points_against
1 A 99 91
2 B 90 80
3 C 86 88
4 D 88 86
5 E 95 93

Tek karakterli sütunun ( takım ) ve iki sayısal sütunun ( point_for ve point_against ) döndürüldüğünü, ancak faktörler sütununun ( konferans ) döndürülmediğini unutmayın.

Örnek 2: Select_if() işlevini sınıf türleri ve sütun adlarıyla kullanma

Aşağıdaki kod, bir veri çerçevesindeki faktör sınıfı türüne veya point_for sütun adına sahip sütunları seçmek için select_if() işlevinin nasıl kullanılacağını gösterir:

 library (dplyr)

#create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                 conference=as. factor (c('W', 'W', 'W', 'E', 'E')),
                 points_for=c(99, 90, 86, 88, 95),
                 points_against=c(91, 80, 88, 86, 93))

#select all factor columns and 'points_for' column
df %>% select_if( function (x) is. factor (x) | all(x == .$points_for))

  conference points_for
1 W 99
2W 90
3 W 86
4 E 88
5 E 95

Tek faktörlü sütunun ve point_for etiketli sütunun döndürüldüğünü unutmayın.

Not : | sembolü, R’deki mantıksal “OR” operatörüdür. İstediğiniz kadar | çünkü ikiden fazla koşulu kullanarak sütunları seçmek istiyorsunuz.

Ek kaynaklar

Aşağıdaki eğitimlerde dplyr’deki diğer yaygın işlevlerin nasıl kullanılacağı açıklanmaktadır:

Dplyr’de cross () işlevi nasıl kullanılır?
Dplyr’de relocate () işlevi nasıl kullanılır?
Dplyr’de dilim () işlevi nasıl kullanılır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir