我在R中有一些膨胀的代码,我正在努力简化。我正在尝试将电子表格读入数据帧,然后转置每个数据帧。
我有一个如下列表
var <- c("amp_genes.annotated.BLCA.txt","amp_genes.annotated.BRCA.txt")
for (i in var) {
var[i] <- readWorksheet(wk, sheet="var[i]", header=T)
var[i] <- as.data.frame(var[i])
var[i] <- t(var1[i][3:ncol(var1[i]),])
}
sheet =行必须在字符串变量周围加上双引号。
这只是告诉我,我有一个意外的}
答案 0 :(得分:2)
也许试试这个;不确定它是否会起作用,因为我没有你的电子表格,但试一试让我知道......也许如果它不能正常工作,它可以在任何你被卡住的地方取消阻止。
library(XLConnect)
wk <- loadWorkbook("workbookname.xls")
sheetnames <- getSheets(object = wk)
content.tr <- list()
# To access sheets by their names
for (sheetname in sheetnames) {
content <- readWorksheet(wk, sheet=sheetname, header=T)
content.tr[[sheetname]] <- t(content[3:ncol(content),])
}
# To access sheets by their position
for (pos in c(1,2) {
content <- readWorksheet(wk, sheet=i, header=T)
content.tr[[sheetname[i]]] <- t(content[3:ncol(content),])
}
访问数据框:
names(content.tr)
spreadsheet1 <- content.tr[[1]]
spreadsheet2 <- content.tr[[2]]