gpt4 book ai didi

r - 在excel的工作表名称中使用正则表达式

转载 作者:行者123 更新时间:2023-12-03 20:19:17 25 4
gpt4 key购买 nike

我有 100 多个 excel 文件,每个文件有 50 张。我试图从每个文件中读取一张纸。我试图阅读的工作表的位置和名称在每个文件中都不同。

但是,每个文件中的工作表名称(我正在尝试阅读)始终包含“验证”一词。所以,我试图从 100 个文件中读取包含单词 validate 的工作表。这要求我使用正则表达式(如“grepl”来选择包含“validate”一词的工作表)。我想知道这是否可能。

据我所知, read_excel 和 xlsx 包不允许这样做。我想要如下内容:

library(xlsx2)

files<-paste0("file",1:100)

lapply(files, function(i){
read.xlsx2(
paste0(i,".xlsx"), sheetName = grep("validate", ??,value=TRUE))})

最佳答案

我发现 readxl这种类型的任务要容易得多:

首先,我在 Excel 文件中制作了一些假数据,然后检查名称并读取感兴趣的选项卡:

sheets <- readxl::excel_sheets("test_38757844.xlsx")

for(x in sheets[grepl("validate", sheets) == T]){
print(x)
validate_x <- readxl::read_excel("test_38757844.xlsx", x)
print(head(validate_x))
}
[1] "validate1"
1 A
1 2 AA
2 3 Sas
3 4 SAS
4 4 GDD
5 5 ASD
6 6 asd
[1] "validate2"
1 a
1 2 s
2 3 s
3 4 d
4 5 d
5 6 f
6 7 g

关于r - 在excel的工作表名称中使用正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38757844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com