我将数据框分成100个小节,如下所示。每个小标题中有10个变量,包括class_name。创建名为每个小标题的文件夹并将每个小标题重新拆分为class_names并另存为单独的CSV的最佳方法是什么。
我尝试了几个lapply(finction(x),paste0())的组合,但是失败了。
因此,假设拆分后的数据帧如下所示:
MyDF Variables
1_A → tibble with 10 rows class_name Green, purple,
…
2_B … type
3_C ..
.. .
100_XX .
因此,预期输出为:
/1_A/ → 1_A.Green.csv
1_A.purple.csv
1_A. ….
/2_B/ … 2_B.yellow.csv
…
..
100_XX
由于您不提供示例数据,因此我将使用数据集datasets::mtcars
。您需要调整解决方案以适合您的数据。
根据您的评论,我假设您已经使用以下方法拆分了数据,该方法返回一个列表:
dfs <- split(mtcars, mtcars$vs)
下一步是使用列表元素的名称遍历此列表。为每个列表元素名称创建一个目录,然后拆分每个数据框,并使用子列表元素名称遍历结果子列表,使用以下命令将每个数据框写入相应的目录file.path(dn, paste0(fn, ".csv"))
:
for (dn in names(dfs)){
dir.create(dn)
sub_dfs <- split(dfs[[dn]], dfs[[dn]]$gear)
for (fn in names(sub_dfs)){
write.csv(sub_dfs[[fn]], file.path(dn, paste0(fn, ".csv")))
}
}
上面应该创建两个目录“ 0”和“ 1”,每个目录包含许多CSV。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句