2017-02-10 71 views
0

如何使row_to_keep命令與變量b一起使用,而不是使用實際變量名稱。感謝您的幫助使用值來搜索r中的列

> names(newdata) 
    [1] "Jahr"  "Forstzone" "value,," 
    > variablennameliste<-list("Year","year","Jahr","jahr") 
    > b<-toString(intersect(names(newdata),variablennameliste)) 
    > print(b) 
    [1] "Jahr" 
    >row_to_keep = which(newdata$b!=2014) 
    Warning message: 
    Unknown column 'b' 

我曾嘗試

assign()  

命令,但沒有奏效

+0

@Henrik我不是這是一個愚蠢的問題OP的代碼bcz有一些元素不同步或回答不好那個笨蛋 – akrun

回答

0

我們需要使用[提取對象中的「B」

which(newdata[,b]!=2014) 

toString包裝是不需要的,因爲它會轉換爲單個當有多個元素時,由分隔符,分隔的字符串。在這個例子中,只有一個元素。

b <- intersect(names(newdata),variablennameliste) 

即使當有多個intersect ING元件,上述應該工作,因爲我們選擇基於「B」的矢量「newdata」列。在這種情況下,比較!=2014取決於列的值和目標