Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 循环以根据文件名在列中插入值并保存在不同的目录中_R_Loops_Directory - Fatal编程技术网

R 循环以根据文件名在列中插入值并保存在不同的目录中

R 循环以根据文件名在列中插入值并保存在不同的目录中,r,loops,directory,R,Loops,Directory,我在一个文件夹(directory1)中工作,我需要首先修改并使用另一个文件夹(directory2)中的.csv文件 首先,我想在基于文件名的列中插入值;我想对所有科目进行循环。 我知道如何处理单个文件,但不知道如何创建循环 #Choose directory with .csv files to read setwd("/Users/R/directory2") d = read.table("ppt01_EvF.csv", sep=",") #Change columns names c

我在一个文件夹(directory1)中工作,我需要首先修改并使用另一个文件夹(directory2)中的.csv文件

首先,我想在基于文件名的列中插入值;我想对所有科目进行循环。 我知道如何处理单个文件,但不知道如何创建循环

#Choose directory with .csv files to read
setwd("/Users/R/directory2")
d = read.table("ppt01_EvF.csv", sep=",")

#Change columns names
colnames(d) <- c("Order","Condition","Press","Response","Time","Time2")

#Read file name
filenames <- "ppt01_EvF.csv"

# Remove ".csv"
filenames2 <- sub(".csv", "", filenames)

# Split the string by "_"
filenames_vec <- strsplit(filenames2, split = "_")[[1]]

# Create new column to store the information
d$PPT_N_NUMBER <- filenames_vec[1]
#选择包含要读取的.csv文件的目录
setwd(“/Users/R/directory2”)
d=读取表格(“ppt01_EvF.csv”,sep=“,”)
#更改列名称

colnames(d)应该是这样的:

setwd("/Users/R/directory2")
files <- list.files()
library(data.table)

data_list <- list()

for(i in 1:length(files)){
  file_name <- files[i]
  d = fread(file_name, sep=",")

  #Change columns names
  colnames(d) <- c("Order","Condition","Press","Response","Time","Time2")

  # Split the string by "_"
  filenames_vec <- strsplit(file_name, split = "_")[[1]]

  # Create new column to store the information
  d$PPT_N_NUMBER <- filenames_vec[1]
  data_list[[i]] <- d
}
all_data <- rbindlist(data_list)
fwrite(all_data, '../directory1/all_data.csv')
setwd(“/Users/R/directory2”)

文件它的工作!谢谢我只需要修改
文件