基于两个逻辑条件的唯一行
Unique rows based on two logical conditions
我希望我的数据框 return 基于两个逻辑条件(或非 AND)的唯一行。
但是当我 运行 这个时,df %>% group_by(sex) %>% distinct(state, education) %>% summarise(n=n())
我根据由 AND 而不是 OR 连接的两个条件得到了去重行。
有没有办法得到这样的东西 df %>% group_by(sex) %>% distinct(state | education) %>% summarise(n=n())
以便删除重复的行将由 OR 连接而不是 AND?
谢谢。
您可以使用 tidyr::pivot_longer
,然后再使用 distinct
:
df %>%
pivot_longer(c(state, education), names_to = "type", values_to = "value")
group_by(sex) %>%
distinct(value) %>%
summarise(n = n())
在这种情况下,pivot_longer
只是将州和教育放入一个名为 value
的列中。
我希望我的数据框 return 基于两个逻辑条件(或非 AND)的唯一行。
但是当我 运行 这个时,df %>% group_by(sex) %>% distinct(state, education) %>% summarise(n=n())
我根据由 AND 而不是 OR 连接的两个条件得到了去重行。
有没有办法得到这样的东西 df %>% group_by(sex) %>% distinct(state | education) %>% summarise(n=n())
以便删除重复的行将由 OR 连接而不是 AND?
谢谢。
您可以使用 tidyr::pivot_longer
,然后再使用 distinct
:
df %>%
pivot_longer(c(state, education), names_to = "type", values_to = "value")
group_by(sex) %>%
distinct(value) %>%
summarise(n = n())
在这种情况下,pivot_longer
只是将州和教育放入一个名为 value
的列中。