首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找一个变量的唯一值超过一个的分组变量

查找一个变量的唯一值超过一个的分组变量
EN

Stack Overflow用户
提问于 2022-07-02 04:20:12
回答 1查看 32关注 0票数 1

在下面的DATA中,我想知道如何找到变量scale具有多个唯一值的唯一study_id

预期的答案应该是Li (scale for Li has other & MBTI)。但我想知道如何通过基本代码或dplyr代码找到它?

代码语言:javascript
复制
m="
study_id   year es_id       r     se     n pub_type  context  ed_setting  age_grp L1    L2    prof  scale outcome
Dreyer     1992   130  0      0.0574   305 DocDisse~ Foreign~ CollegeUni~ Adult   Afri~ Engl~ NA    Other Listen~
Dreyer     1992   131  0.04   0.0574   305 DocDisse~ Foreign~ CollegeUni~ Adult   Afri~ Engl~ NA    Other Writing
Dreyer     1992   132 -0.03   0.0574   305 DocDisse~ Foreign~ CollegeUni~ Adult   Afri~ Engl~ NA    Other Reading
Dreyer     1992   133  0      0.0574   305 DocDisse~ Foreign~ CollegeUni~ Adult   Afri~ Engl~ NA    Other Overall
Ghapanchi  2011    89  0.31   0.0806   141 JournalA~ Foreign~ CollegeUni~ Adult   Pers~ Engl~ NA    Other Overall
Hassan     2001   177  0.25   0.117     71 NA        Foreign~ CollegeUni~ NA      Arab~ Engl~ NA    Other Speaki~
Kralova    2012   137  0.0252 0.117     75 JournalA~ Foreign~ CollegeUni~ Adult   Slov~ Engl~ Inte~ Other Speaki~
Li         2009    55 -0.04   0.132     59 JournalA~ Foreign~ CollegeUni~ Adult   Chin~ Engl~ NA    Other Grammar
Li         2009    56  0.355  0.124     59 JournalA~ Foreign~ CollegeUni~ Adult   Chin~ Engl~ NA    Other Pragma~
Li         2003    57  0.039  0.0735   187 JournalA~ Foreign~ CollegeUni~ Multip~ Chin~ Engl~ NA    MBTI  Overall
"

DATA <- read.table(text = m, h=T)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-02 04:40:36

这是dplyr和基本R的一种方式-

这样做的目的是选择具有唯一study_id的行,其中有多个唯一的scale值。

代码语言:javascript
复制
library(dplyr)

DATA %>%
  group_by(study_id) %>%
  dplyr::filter(n_distinct(scale) > 1) %>%
  ungroup %>%
  distinct(study_id)

# study_id
#  <chr>   
#1 Li      

基R-

代码语言:javascript
复制
unique(subset(DATA, ave(scale, study_id, 
       FUN = function(x) length(unique(x))) > 1, select = study_id))

#  study_id
#8       Li
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72836412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档