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?