在 R 中对多个数据集执行相同的操作

如何解决在 R 中对多个数据集执行相同的操作

我正在尝试在 R 中创建一个函数,该函数对许多不同的数据集执行一些特定操作,代码如下:

PHP 8.0.3 (cli) (built: Mar  5 2021 08:38:30) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.3,Copyright (c) Zend Technologies
    with Zend OPcache v8.0.3,Copyright (c),by Zend Technologies

执行此操作时,我收到以下错误消息:

checkForRemoteErrors(val) 中的错误: 2个节点产生错误;第一个错误:文件“Adresser og distancer\kommune.csv”不存在或不可读。 getwd()=='C:/Users/KSAlb/OneDrive/Dokumenter'

我需要它来更改文件的名称。这里它应该在文件名中插入 Albertslund 而不是 kommune,执行操作,写出一个 CSV 文件(将“final_kommune.csv”更改为“final_Albertslund.csv”),清除环境,然后继续下一个数据集,吓坏了。

Albertslund 和 Alleroed 只是示例,我总共需要处理 98 个数据集。

解决方法

也许下面的代码会有所帮助。未经测试,因为没有数据。

library(parallel)
library(dplyr)
library(data.table)
library(tidyr)

data_func <- function(kommune,inpath = "Adresser og distancer",turbines,outpath = "D:/Speciale/Analysedata") {
  filename <- paste0(kommune,".csv")
  filename <- file.path(inpath,filename)
  #Load address and turbine datasets
  distances <- fread(
    file = filename,header = TRUE,sep = ",",colClasses = c("longitude" = "character","latitude" = "character","min_distance" = "character","distance_turbine" = "character","id_turbine" = "character"),encoding = "Latin-1"
  )

  #Some cleaning of the data and construction of new variables

  #write out the dataset
  outfile <- paste0("final_",kommune,".csv")
  outfile <- file.path(outpath,outfile)
  fwrite(mock_final,file = outfile,row.names = FALSE)
}

cluster = makeCluster(2)
setwd("D:\\Speciale")

# Read turbines file just once
turbines <- fread(
  file = "turbines_DK.csv",sep=",colClasses = c("lon" = "character","lat" = "character","id_turbine" = "character","total_height" = "character","location" = "character"),encoding = "Latin-1"
)

kommune_vec <- c("Albertslund","Alleroed")
do.call(rbind,parLapply(cl = cluster,kommune_vec,data_func,turbines = turbines))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?