Как отфильтровать помеченный тиббл в R

Я хочу отфильтровать табличку с помощью переменнойs2со значениями 2 и 3. Я получаю новую табличкуdf2который продолжает показывать также значение 1 из s2.

Как я могу создать новую табличку только с отфильтрованными значениямиdf?

      library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
library(labelled)

df <- tibble(s1 = c("M", "M", "F", "M", "M", "F"),
             s2 = c(1, 1, 2, 1, 1, 3)) %>% 
  set_variable_labels(s1 = "Sex", s2 = "Question") %>%
  set_value_labels(s1 = c(Male = "M", Female = "F"), s2 = c(Yes = 1, No = 2, DK =3))

df2 <- df %>% filter(s2 %in% c("2", "3"))

df2$s2
#> <labelled<double>[2]>: Question
#> [1] 2 3
#> 
#> Labels:
#>  value label
#>      1   Yes
#>      2    No
#>      3    DK
Created on 2022-10-12 with reprex v2.0.2

0 ответов

Другие вопросы по тегам