![](/img/trans.png)
[英]Appending a row to a dataframe while reading from multiple csv files in R
[英]Appending a column to multiple csv files that contains a constant in each row
我正在尝试编写一个脚本,该脚本对包含 csv 文件列表的变量执行以下序列:
-读取每个 csv 文件
- 使用 header“维度类型”将列附加到每个 csv,其中新列中的每一行都包含第一列中 header 的名称
- 将第一列的 header 重命名为“Dimension”
-组合所有 csv 文件
-将组合的 csv 文件导出到 excel 文件
除了第一列的 header 是维度类型的名称之外,所有 csv 文件的结构都相同
我使用 list.files function 创建了包含 csv 文件列表的变量,并且我有我想要存储 excel 文件的目录存储在变量中。
像这样的东西会起作用吗? 因为我没有你的数据,所以我只是做了一些快速的数据集。 (编辑以包括将其与列表一起使用)
df1 <- data.frame(dtype1 = sample(letters, 25, replace = TRUE),
col1 = sample(1:10, 25, replace = TRUE),
col2 = sample(5000:10000, 25))
df2 <- data.frame(dtype2 = sample(letters, 25, replace = TRUE),
col1 = sample(1:10, 25, replace = TRUE),
col2 = sample(5000:10000, 25))
df.list <- list(df1,df2)
SO_function <- function(df){
df$`Dimension Type` <- colnames(df)[1]
colnames(df)[1] <- "Dimension"
return(df)
}
# apply to list
df.list_want <- lapply(df.list, SO_function)
# or apply to individual df's
df1.want <- SO_function(df1)
df2.want <- SO_function(df2)
#> head(df1.want, 5)
# Dimension col1 col2 Dimension Type
#1 t 7 5921 dtype1
#2 r 4 5772 dtype1
#3 d 1 6722 dtype1
#4 u 2 8750 dtype1
#5 f 2 9778 dtype1
#> head(df2.want, 5)
# Dimension col1 col2 Dimension Type
#1 k 5 5882 dtype2
#2 c 8 6237 dtype2
#3 f 6 6484 dtype2
#4 d 4 8504 dtype2
#5 i 7 7022 dtype2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.