【问题标题】:Get list of values from one column based on values of multiple columns根据多列的值从一列中获取值列表
【发布时间】:2016-09-09 16:14:37
【问题描述】:

我的数据:

 Focal NrN Distance  DSS
 A      Z        1    1
 A      Z        2    2
 A      Z        2    3
 A      Y        3    3

当 Focal 列中的值为 A 且 NrN 中的值为 Z 时,我想获取 DSS 值列表。结果应该是 DSS 列中的值 1、2 和 3。

我试过了:

FOC_NrN <- data$Focal=="A" & data$NrN== "Z"
table(data$DSS,FOC_NrN)



FOC_NrN
    FALSE TRUE
  1     0    1
  2     0    1
  3     1    1
  4     1    0
  5     1    0
  6     1    0
  7     1    0
  8     1    0

但我无法在 TRUE 列中获得三个 DSS 值的列表 - 这就是我想要的,以便它可以应用于其他脚本并循环它

【问题讨论】:

  • 你需要data$DSS[FOC_NrN]
  • @akrun,这就是我需要的,但没有! - 如此简单 - 多么n00b。谢谢!

标签: r list conditional-statements


【解决方案1】:

我们只需要对“DSS”列进行子集化

data$DSS[FOC_NrN]
#[1] 1 2 3

【讨论】:

  • 那我怎么算。所以答案是3? sum(data$DSS[FOC_NrN]) 给我 6。
  • @Bonono 只需使用lengthlength(data$DSS[FOC_NrN])
猜你喜欢
  • 1970-01-01
  • 2015-08-03
  • 2022-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-01
  • 1970-01-01
相关资源
最近更新 更多