0
我有這樣的查找數據幀:子集和查找從單獨的表
VAR1=c('X1')
VAR2=c('X2')
VAR3=c('X3')
VAR4=c('X4')
VAR5=c('NA')
df<-data.frame(VAR1,VAR2,VAR3,VAR4,VAR5)
我需要與主數據幀交叉引用,以便我選擇變量X1至X5。有時候,就像這個例子,第5列簡直就是NA。
我通常會使用類似下面:
main_data <-subset(main_data, select=c(df[1,1],df[1,2],df[1,3]))
main_data <-subset(main_data, select=c(df[1,1:max(col(df))]))
但也有來港,而且我會列一個動態的數量,這些不工作。
另一個想法是對main_data使用grepl但我不能讓它同時與多個變量工作:
main_data <- main_data[, grepl(paste0(df[1:max(col(df))], colnames(main_data)))]
我敢肯定有一個簡單的方法來做到這一點,但我不能找到它。
另一種方法是強迫'df'矢量和使用'%'%。例如。 'main_data [,%yourvector]中的名稱(main_data)%')。 –
@RomanLuštrik好點,我現在正在測試這一個。 –