【问题标题】:subset / delete data.frame with vector value in r子集/删除带有向量值的data.frame r
【发布时间】:2011-12-02 21:27:09
【问题描述】:

小例子

 A <- c("kl", "ck", "nK", "jk")
    B <- data.frame( CK = 1:10, JK = c ("kl", "cdf", "ck", "snp", "je1","cki", 
"nK", "cd12", "jk", "lm"), np = 31:40)
B
   CK   JK np
1   1   kl 31
2   2  cdf 32
3   3   ck 33
4   4  snp 34
5   5  je1 35
6   6   cki 36
7   7   nK 37
8   8 cd12 38
9   9   jk 39
10 10   lm 4

我想选择 B$Jk 的值等于 A 的行,并保留顺序。因此输出将有整行的值(“kl”,“ck”,“nK”,“jk”)

   CK   JK np
1   1   kl 31
2   3   ck 33
3   7   nK 37
4  9   jk 39

我的审判:

B[B$JK %in% A] 
Error in `[.data.frame`(B, B$JK %in% A) : undefined columns selected

我知道这是一个太基本的问题,但我不知道。

【问题讨论】:

    标签: r dataframe subset


    【解决方案1】:

    你只是少了一个逗号:

    B[B$JK %in% A,]
    
     CK JK np
    1  1 kl 31
    3  3 ck 33
    7  7 nK 37
    9  9 jk 39
    

    逗号表示您正在按行进行子集化。

    【讨论】:

    • @John 明确说明并表明您尝试过的简单问题没有错!
    • @John 永远不会尴尬!我经常犯这种错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-11
    • 1970-01-01
    • 2018-10-23
    • 2018-05-03
    • 2021-11-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多