R如何用变量替换字符串?

时间:2014-03-14 19:10:02

标签: r

我有一个简单的问题,我似乎无法找到问题。

Color<-'Blue'
Transparency<-'Clear'

Data<-subset(Data,Data$AAA== Color  & Data$BBB== Transparency)

我想将字符串分配给变量,以便它可以重复使用,以获得更好的可读性和代码重用性。

我尝试使用eval()和get(),太糟糕了,它并没有真正起作用。 谢谢!

2 个答案:

答案 0 :(得分:1)

这可能会有所帮助(看看它是否有效):

Color <- c("yellow", "green", "blue")
Transparency <- c("A", "B", "C")

Data <- list(3)

for(i in 1:3) {
     Data[[i]] <- subset(Data, Data$AAA== Color[i]  & Data$BBB== Transparency[i])
}

答案 1 :(得分:1)

这应该有用。

Data<-subset(Data,AAA== Color  & BBB== Transparency)

示例:

df <- data.frame(AAA=c("red","green","blue"),BBB=c("clear","cloudy","opaque"))
color<-"red"
trans<-"clear"

subset(df,AAA==color&BBB==trans)
#   AAA   BBB
# 1 red clear