如何实现用R语言一次读取多个zip文件,获取zip文件里的数据?今天丁老师教给大家。
R语言可以使用zip_vector函数,可以读取所有zip压缩文件里的内容,并且无需使用循环。
代码示例:
datprocessorC <- function(zip_vector) {
f <- function(zipfile) {
fls <- unzip(zipfile, list = TRUE)$Name
lapply(fls, \(f) fread(unzip(zipfile, files = f))) |> rbindlist(fill = TRUE)
}
lapply(zip_vector, f) |> rbindlist(fill = TRUE)}
#从list.files()返回的压缩文件向量上运行
importC <- datprocessorC(zips)下面是另一个函数,可以不解压zip文件,直接通过unz/readr::read_csv读取,并且不生成zip压缩包里的文件,通通直接读取。但是这个函数提取数据所需的时间大约是datprocessorC的两倍。
datprocessorD <- function(zip_vector) {
f <- function(zipfile) {
fls <- unzip(zipfile, list = TRUE)$Name
out <- vector("list", length(fls))
for(i in seq_along(fls)) {
tmp <- unz(zipfile, filename = fls[i])
out[[i]] <- readr::read_csv(file = tmp, show_col_types = FALSE)
}
data.table::rbindlist(out, fill = TRUE)
}
lapply(zip_vector, f) |> data.table::rbindlist(fill = TRUE)
}经常有小伙伴问丁老师,说扫描出来的PDF图片,都是一个一个的,怎么样把他们合并成一个文件呢?我说你去下载一个PDF工具就好了呀,有某某PDF共阅读器、编辑器嘛。小伙伴说不行呀丁老师,因为网上的这些PDF工具有以下缺点:1.体积太大。动辄...
有同学在前端写css代码时,遇到问题,使用的css3,写的是position:sticky,想要内容滚动到该区域,该区域自动置顶滑动。但一直无效,经过丁老师研究后发现,该区域没有定义高度,而使用position:sticky时,是必须要...
有同学反应,在使用photoshop时,忽然文件打不开了,先后试了下psd格式、jpg格式、png格式的,等等等等,全都打不开,重启了电脑也不行,这是怎么回事呢?经过丁老师研究后发现,这是因为安装的是非正版photoshop,在使用时,...
内网穿透,是指外网可以访问内网,没有固定IP的服务器,所以需要中间件来进行通讯,目前稳定成熟的中间件软件,要么价格太贵,要么就是只能使用标准服务,不能完全的定制化。那么,到底有没有一个性价比最优的方案呢?回答是肯定的,答案就是使用云服务...
在使用idea系列的配套软件时,如intellij idea、Php Storm、Web Strom时,在搜索文件时,右上角的file mask可以筛选指定类型的文件。但是有时候可能会输入错误,产生多个记录,而且没办法删除,在以后的开发中经...
在使用android studio打包app时,需要制作JKS证书,具体的命令如下:D:\Program Files\Java\jre1.8.0_301\bin keytool -genkey -v -keystore dlq6.jks -...
废话不多说,直接上货。在微信开发者工具调试栏,找到Sensor(传感器)。Geolocation,勾选启用,下边输入经纬度即可!
由老版本7.2自动升级时,会出现很多问题,建议在终端手动升级。升级命令:curl http://download.bt.cn/install/update_panel.sh|bash