R 如何根据列名称存储在变量中的列的值筛选data.table
假设我有一个R 如何根据列名称存储在变量中的列的值筛选data.table,r,data.table,R,Data.table,假设我有一个数据。表如下- DT = data.table('Col1' = c(NA, 100), 'Col2' = letters[1:2]) 现在我想过滤这个DT,其中Col1是NA。但是Col1存储在变量中- Col_Name = 'Col1' DT[is.na(Col_Name)] ### Empty data.table (0 rows and 2 cols): Col1,Col2 你知道我为什么会得到0排吗 然而,如果我这样做 DT[is.na(Col1)] 我得到了正确的结
数据。表如下-
DT = data.table('Col1' = c(NA, 100), 'Col2' = letters[1:2])
现在我想过滤这个DT
,其中Col1
是NA
。但是Col1
存储在变量中-
Col_Name = 'Col1'
DT[is.na(Col_Name)]
### Empty data.table (0 rows and 2 cols): Col1,Col2
你知道我为什么会得到0排吗
然而,如果我这样做
DT[is.na(Col1)]
我得到了正确的结果
第一种方法有什么问题
任何指针都将受到高度赞赏
谢谢,您正处于标准评估问题的典型示例中。使用data.table
处理变量名非常容易。在您的情况下,get
可以完美地完成这项工作
DT[is.na(get(Col_Name))]
参见我在数据中写的关于SE与NSE的主题。表
您处于标准评估问题的典型示例中。使用data.table
处理变量名非常容易。在您的情况下,get
可以完美地完成这项工作
DT[is.na(get(Col_Name))]
参见我在数据表DT[is.na(get(Col\u Name))]
DT[is.na(get(Col\u Name))]中写的关于SE与NSE的主题