此代码读取工作簿中的每个工作表,然后搜索一个单词,并写入一个文件,如果找到该单词,则说“ true”。
问题是我必须列出要阅读的图纸。这是工作,除非工作簿具有不同数量的工作表。因此,在这种情况下,该代码将适用于具有60张纸的工作簿,但如果有61页,则无法使用。
isWordInTibble <- function(word, tibble) {
any(unlist(
sapply(1:ncol(tibble),
function(i) word %in% as.character(unlist(tibble[, i])))))
}
sheet_to_read <- c(1:60) ### **this part needs a for loop!!!!**
for(excelsheet in files){
for (sheet in sheets_to_read) {
temp <- read_excel( path = excelsheet, sheet = sheet, col_names = FALSE)
if (isWordInTibble("Paludisme", temp)) {
write.csv(temp,
file = gsub(".xlsx",
paste0(substr(temp[-1, 1],
1,
1),
gsub("sheet", "", sheet),
substr(tolower(as.character(isWordInTibble("Paludisme", temp))),
1,
5),
".csv"),
excelsheet)) } } }
我有这段代码可以识别多少张纸
numbs<- as.list(lapply(files,excel_sheets))
listed<-t(lapply(numbs, function(x) lapply(x,length)))
,但不知道如何将其添加到上面的代码中。我希望代码首先确定c(1:xxx)
有多少张纸,然后在此上运行其余代码。