2016-11-21 32 views
-1

我有大量行和列的大数据。我想在df2中从df1中的变量列表(df1中的列名称)中为df1中的少数列进行子集化。只是举例,我有从另一个数据框中的列表中选择一个数据帧中的变量

df1 <- data.frame(A=sample(1:10, 10), B=sample(1:10, 10), C=sample(1:10,10), D=sample(1:10,10)) 
var <- c('A','C') 
ratio <- c(0.5,0.6) 
df2 <- data.frame(var,ratio) 

新的数据帧应该是这样的:

A C 
1 9 2 
2 1 3 
3 4 5 
4 2 8 
5 10 7 
6 5 1 
7 7 9 
8 3 4 
9 8 10 
10 6 6 
+1

尝试'df1 [as.character(df2 $ var)]''var'是'factor'列,将其转换为'character' – akrun

+0

它的工作原理!谢谢@akrun – Shima

回答

0

我们需要将factor变量“VAR”转换为character类子集划分的第一个数据集

df1[as.character(df2$var)] 
相关问题