Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.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 使用Lappy解析生成CSV的数据帧_R_Csv - Fatal编程技术网

R 使用Lappy解析生成CSV的数据帧

R 使用Lappy解析生成CSV的数据帧,r,csv,R,Csv,我正在尝试获取数据帧并将其发送到.csv文件。下面是我使用dput(df)的示例数据: df这里有一个解决方案: 由于您只想使用函数来处理其副作用(写入文件),并且不需要返回任何值,因此软件包中的walk函数适用于以下情况: Map(write.csv,split(df,df$code),filename2).Wow-Map正是我需要的。谢谢因此,用谷歌搜索术语Map是相当困难的。在本例中,如何使用row.names=FALSE?write\u csv函数(不要与write.csv混淆)从不写

我正在尝试获取数据帧并将其发送到.csv文件。下面是我使用dput(df)的示例数据:

df这里有一个解决方案:

由于您只想使用函数来处理其副作用(写入文件),并且不需要返回任何值,因此软件包中的walk函数适用于以下情况:


Map(write.csv,split(df,df$code),filename2)
.Wow-Map正是我需要的。谢谢因此,用谷歌搜索术语
Map
是相当困难的。在本例中,如何使用
row.names=FALSE
write\u csv
函数(不要与
write.csv
混淆)从不写入行名。注意:
write\u csv
是来自
readr
软件包的一个tidyverse函数,速度大约是
write.csv
的2倍。如果您想使用
write.csv
,只需将
row.names=FALSE
作为参数传递,就像这样
…paste0(x,“_file.csv”),row.names=FALSE)}
您说得对,我把它们弄混了。我还希望列名是假的。你的解决方案太完美了!
df <- structure(list(ident = 1:35, code = structure(c(1L, 1L, 1L, 1L, 
1L, 1L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 
4L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 6L, 6L, 6L, 6L, 6L), .Label = c("A", 
"B", "C", "D", "E", "F"), class = "factor"), Desc = structure(c(3L, 
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 
2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 
3L, 1L), .Label = c("lax", "mia", "nyc"), class = "factor")), .Names = c("ident", 
"code", "Desc"), class = "data.frame", row.names = c(NA, -35L
))
filename <- levels(df$code)

filename2 <- paste0(filename, "_file.csv")
library(tidyverse)

walk(unique(df$code), function(x) {write_csv(df %>% filter(code == x), paste0(x, "_file.csv"))})