Извлечение данных с определенным значением столбца в r - PullRequest
0 голосов
/ 15 июня 2019

У меня есть датафрейм dat1 в r, и я хотел бы создать еще один фрейм данных для всех данных из dat1, где column2 имеет определенное значение.

Так, например:

dat1 = [1 2 3 4 5 6]

dat2 должен содержать все данные, где dat1 $ column2 == 2.

Как я мог это сделать?

Ответы [ 2 ]

1 голос
/ 15 июня 2019

Функция фильтра в tidyverse сделает это за вас:

# setup 
library(tidyverse)
dat1 <- data.frame('x' = c(1:5), 'y' = rnorm(5,0,1))

# solution
dat2 <- dat1 %>% filter(x == 2)

Обратите внимание, что %>% - это "труба", говорящая, что она должна подавать dat1 в функцию filter(), принимая строкииз dat1, где x равно 2, и сохраните их как dat2

Существуют и другие решения, такие как индексирование

dat1[dat1[,'x'] == 2,]

И subset() функция

subset(dat1, x == 2)
0 голосов
/ 15 июня 2019

Я буду использовать встроенные функции для фильтрации фреймов данных.

dat1 = data.frame(col=c(1,2,3,4,5,6))
dat2 = dat1[dat1$col ==2,]

dat2 будет возвращено как одно значение, а не как фрейм данных.

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