I have hardcoded this:
s79t5 <- read.csv("filename1.csv", header = TRUE)
s81t2 <- read.csv("filename2.csv", header = TRUE)
etc.
subsets79t5 <- subset(s79t5, Tags!='')
subsets81t2 <- subset(s81t2, Tags!='')
...
subsets100t5 <- subset(s100t5, Tags!='')
now i need to softcode it. i am almost there:
sessions <- c('s79t5', 's81t2', 's88t2', 's90t3', 's96t3', 's98t4', 's100t5')
for (i in 1:length(sessions)) {
jFileName <- c(as.character(sessions[i]))
j <- data.frame(jFileName)
subset <- subset(j, j$Tags!='')
assign(paste("subset", jFileName, sep = ""), data.frame(subset))
}
答案 0 :(得分:0)
这里只是回答一个问题来解决这个问题。讨论在评论中。
您的行中需要get
功能:j <- data.frame(jFileName)
应该是:j <- as.data.frame(get(jFileName))
get函数在现有对象中查找您给它的字符串字符(在本例中为jFileName
)并返回该对象。然后我确保它是一个as.data.frame
的数据框。
以前你实际上是在告诉R用字符串创建一个数据框。使用get
,您现在正在引用您的实际数据集。