【发布时间】:2021-09-10 02:09:31
【问题描述】:
我想将一个文件夹中的所有 csv 文件合并为一个通用 csv 文件。这些文件具有不同的列名,但格式独特(每个文件中有两列——一列有代码,另一列有描述)。需要以整洁的方式开发一个通用的 csv 文件,其中包含具有唯一列名的所有文件。
文件夹如下:
setwd("folder location")
file1 <- read.csv("file1.csv")
file2 <- read.csv("file2.csv")
为了重现性:
file1 <- read.table(header=TRUE, text="
A_code A_desc
n 15-24
n 15-24
n 15-24
t 25-34
p 35-44
k 65-74
l 45-54
")
file1
A_code A_desc
1 n 15-24
2 n 15-24
3 n 15-24
4 t 25-34
5 p 35-44
6 k 35-44
7 l 45-54
file2 <- read.table(header=TRUE, text="
M_code M_desc
p new
p new
p new
a old
b medium
b medium
")
file2
M_code M_desc
1 p new
2 p new
3 p new
4 a old
5 b medium
6 b medium
理想的输出如下:
Gen_code Gen_Desc Ori_code Ori_desc
1 n 15-24 A_code A_desc
2 n 15-24 A_code A_desc
3 n 15-24 A_code A_desc
4 t 25-34 A_code A_desc
5 p 35-44 A_code A_desc
6 k 65-74 A_code A_desc
7 l 45-54 A_code A_desc
8 p new M_code M_desc
9 p new M_code M_desc
10 p new M_code M_desc
11 a old M_code M_desc
12 b medium M_code M_desc
13 b medium M_code M_desc
到目前为止,我能够执行以下操作,但这不是我需要的。
path="folder location"
directory() %>%
filter(endsWith(path, ".csv")) %>%
select(path) %>%
mutate(data = purrr::map(path, read_csv)) %>%
unnest()
【问题讨论】: