Как выбрать столбцы определенного типа данных в R: select_dtypes эквивалентен в r - PullRequest
0 голосов
/ 11 апреля 2020

Я новичок в R. Я хорош с python. В python у нас есть функция select_dtypes(df,include='datatype', exclude='datatype')

Так что, если я хочу выяснить все столбцы с цифрами c, я могу сделать select_dtype(df,include='numeric') и получить список только столбцов с цифрами c. При этом будут выбраны все столбцы с номерами c (float, int32, int64 et c.). Я также могу явно выбрать только столбцы int и так далее. Точно так же я могу исключить столбцы определенного типа данных

Как мне добиться того же в R.

df

Int1  Int2   Char1   Char2  factor1  flaot1   #lets say these are the columns of a df

1 Ответ

2 голосов
/ 11 апреля 2020

Мы можем использовать select_if из dplyr после считывания данных в R

library(dplyr)
df1 %>%
     select_if(is.numeric)

Или если нам нужно отрицать

library(purrr)
df1 %>%
     select_if(negate(is.numeric))

Или

df1 %>%
    select_if(~ !is.numeric(.))

Или в base R мы можем проверить с помощью sapply

i1 <- sapply(df1, is.numeric)
df1[i1]

Если нам нужно исключить, отрицание (!)

df1[!i1]

Или с Filter

Filter(is.numeric, df1)

Или Negate

Filter(Negate(is.numeric), df1)

С воспроизводимым примером

Filter(Negate(is.factor), iris)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...