我有一个data.csv文件为:
BBBB,B,OOB
CCCC,C,OOC
DDDD,D,OOD
EEEE,E,OOE
我获得第二列是:df1
问题是我如何在熔解函数中将df1用作c(“ B”,“ C”,“ D”,“ E)”,以将df1用作measure.vars,用于另一组数据(data2例如标头为B,C,D,E)。
B,C,D,E
9.43,9.49,9.61,9.04
7.01,3.43,3.63,3.55
10.35,9.05,9.49,8.45
4.83,1.89,1.79,1.94
10.3,10.39,9.67,8.95
我想用作:df2 = data.frame(melt(data2,measure.vars = df1,variable.name = xxxx,value.name =“ yyyy”),m =“ zzzz”)
[如果我们不使用任何[
而使用,
,那么它仍然是具有单个列的data.frame
(假设原始数据集是data.frame
。更好的选择是[[
提取为向量,而measure
参数需要一个vector
。也最好用unique
包装(如果有重复项)
v1 <- unique(read.csv('file.csv', header=FALSE,strip.white=TRUE,stringsAsFactors=FALSE)[[2]])
现在,我们在measure
中使用它>
library(reshape2)
df2 <- data.frame(melt(data2, measure.vars=v1, variable.name='xxxx',
value.name="yyyy"), m="zzzz")