使用R中的可选变量进行子集

时间:2017-09-27 21:07:36

标签: r subset

是否有一种简单的方法允许R中的可选变量?我在正则表达式中寻找类似?运算符的东西。例如,假设我有一个数据框x。我们假设x包含ABCD列。我想将x分组,以便我只保留ABC。所以我使用x[,c("A", "B", "C")]。但是,如果有一天我将文件导入x并且由于某种原因它没有列C并且我运行代码,则会收到错误,因为R无法找到列{ {1}}。

有没有办法让每列都可选?类似C之类的内容,以便在其中一个列丢失的情况下,R跳过它并仅包含x[,c("A"?, "B"?, "C"?)]A而不会抛出错误?

1 个答案:

答案 0 :(得分:2)

您可以将列名称的向量子集化为实际存在的

x[, intersect(c("A", "B", "C"), names(x))]