R 中将拆分数据帧保存为新文件的问题
Posted
技术标签:
【中文标题】R 中将拆分数据帧保存为新文件的问题【英文标题】:Issues in R with saving split dataframes as new files 【发布时间】:2016-05-17 21:46:28 【问题描述】:我已经搜索了一些与此相关的已回答问题,但我仍然遇到问题。
我在 R 中加载了 140 万个数据框,其中包含约 56 辆车的 gps 路线数据。我使用split()
函数将我的数据按总线名称解析为更小的块(总线名称示例:'1367/E0007489')。我使用了以下代码行:
dfs <- split(sater001_paired, f=sater001_paired[, "vehicleName"])
sater001_paired
是我的数据框,vehicleName
是我拆分的变量。每个块的行数是不均匀的,因为这些数据是实时捕获的。
我现在面临的问题是尝试将这些块中的每一个保存到它们自己的.csv
文件中。我尝试使用 lapply :
lapply(names(dfs), function(x)write.table(dfs[[x]], file = paste("bus", x, sep = "")))
但是 R 返回错误消息“无法打开连接”。我很可能遗漏了一些东西,因为我对使用 lapply
函数非常生疏。
基于此有什么建议吗?
【问题讨论】:
你的代码对我有用... 我也是(在 linux 机器上).....您是否在此处检查过有关所选答案的建议? ***.com/questions/17156445/… 我浏览了它们,但似乎没有一个能解决我的问题,因为我是这个工作站的管理员,并且仍然重复消息;无法打开连接,以及额外的“不存在这样的文件”消息' 你是说你用于文件名的值有斜线吗?这会导致问题。您应该将斜杠替换为文件名的其他内容。如果您提供reproducible example 会更清楚 事实上,我用作“名称”的 VehicleNames 变量确实有它。这可能是问题所在。我可能会在明天回来解决这个问题并提供更新。 【参考方案1】:MrFlick 帮助我意识到了我在这里遇到的问题。
所以为了结束这个,我在车辆名称列的每个识别码中间包含了一个正斜杠。由于 Windows 上的 Rstudio 不喜欢这些字符,我没有意识到这一点,因为我最近才从主要使用 Mac OS 切换。
通过在以下代码中使用gsub
:
sater001_paired$vehicleName <- gsub('/', '-', sater001_paired$vehicleName)
此问题现已解决。再次感谢 MrFlick 的帮助。
【讨论】:
以上是关于R 中将拆分数据帧保存为新文件的问题的主要内容,如果未能解决你的问题,请参考以下文章