gpt4 book ai didi

使用 read_excel 从 R 中的 excel 文件读取有限数量的行

转载 作者:行者123 更新时间:2023-12-02 12:38:08 27 4
gpt4 key购买 nike

我正在使用 readxl 包在 R 中读取 excel 文件,如下所示:

library(readxl)
file_names <- list.files(pattern = ".xlsx")

list_collection <- list()
for(i in 1:length(file_names)){
frame <- read_excel(file_names[i], )
frame_sub <- frame[1:100,]
list_collection[i] <- list(frame_sub)
}

由于 Excel 文件很多,我只想要前 100 行。显然这效率不高。有没有办法最初从 Excel 中读取 100 行,而不是读取整个文件然后进行子集化?

最佳答案

尝试使用xlsx::read.xlsx()。它具有用于指定开始行和结束行的参数。另请注意,我对您的 for() 循环进行了一些改进(内存分配是最重要的)。

library(xlsx)
## get file names
file_names <- list.files(pattern = "\\.xlsx$")
## allocate memory for our list
out <- vector("list", length(file_names))
## read the files and assign them to the list
for(i in seq_along(file_names)) {
out[[i]] <- read.xlsx(file_names[i], startRow = 1, endRow = 100)
}

或者您可以通过将 for() 循环更改为

来创建命名列表
for(file in file_names) {
out[[file]] <- read.xlsx(file, startRow = 1, endRow = 100)
}

关于使用 read_excel 从 R 中的 excel 文件读取有限数量的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36488580/

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