【问题标题】:Import a csv file into R containing multiple columns in one column?将一个csv文件导入R中,在一列中包含多列?
【发布时间】:2013-09-21 14:23:03
【问题描述】:

我有一个 csv 文件。该文件包含单列中用空格分隔的数据。问题并没有在这里结束,因为在某些地方,某些行中存在额外的列。我想根据空格拆分基于数据(创建列)。数据集非常庞大,所以我不想手动进行。请查看示例数据并告诉我如何以所需格式导入文件。

请在下面找到示例数据:

第一行:

"3000 2010-09-10 01:06:10.144132-05 2010-09-10 01:06:10.018-05 353 Location No_en 5860    
 ""locx""=>""963"""  "locy"=>"3998"  "flew_id"=>"Campus>center>Layout Floor"

大多数行都是这样的,但有些地方我们有如下所述的行:

第二行:

"3000 2010-09-10 01:06:10.129147-05 2010-09-10 01:06:10.015-05  353 Location Unit09 0085    ""locx""=>""873""" "locy"=>"30344" "con"=>"67676" "flew_Id"=>"Campus>Center>Layout Floor"

这里我们有一个额外的列作为 con。其他行中不存在。有什么想法吗??

【问题讨论】:

  • 如果你提供一个最小的例子。我可以写一个小演示代码。

标签: r csv import


【解决方案1】:

对每一行使用read.csv(filename)strsplit(yourstring, pattern) 函数。

替代方法:

read.csv(file,sep=space)

[更新]

【讨论】:

  • 如果不添加 fill=TRUE 参数来说明具有不同条目数的行,我认为这不会起作用。
  • fill = TRUE 是默认值,所以它应该可以工作。当然,更多信息会对我们有所帮助。
  • 这是 read.csv 的默认值,但不是 read.table ,所以要小心
猜你喜欢
  • 1970-01-01
  • 2020-09-04
  • 2022-01-13
  • 2016-06-23
  • 2019-05-10
  • 2011-02-07
  • 1970-01-01
  • 2016-05-23
  • 2019-09-26
相关资源
最近更新 更多