将简单数据作为:
A <- (1:100)
B <- (4:103)
C <- (100:199)
D <- (1000:1099)
df <- data.frame(A,B,C,D)
unique_set <- c('B','C')
现在使用
创建unique_set
变量的df会计子集非常简单
df[unique_A]
但是,让我们说,我只想要一行特定的数字。或者更具体地说,针对特定的A
值。如果我们尝试这样做,就会发生错误。
df[unique_A][df$A == 78]
或者
df[unique_A & df$A == 78]
所以我希望它输出的是它返回的内容
df[unique_A][78,]
当A按顺序排列时,以下代码有效。但我想知道用户如何同时具体设置条件(即A值),同时考虑我们的unique_set
要求?
必须使用A
命令包含unique_set
吗?
答案 0 :(得分:0)
基本上data.frame
子集如下所示:
df[condition on rows, condition on columns]
因此,在您的情况下,您希望选择A列为78的所有行,同时仅选择unique_set上指定的列:
df[df$A == 78, unique_set]
尝试使用这些示例:
df[df$A == 78, c("B", "C")]
df[df$A == 78, c(2, 3)]
df[78, c(1:3)]