【问题标题】:read_csv does not work separate commas and not capture separate rowsread_csv 不能使用单独的逗号,也不能捕获单独的行
【发布时间】:2019-03-21 17:46:20
【问题描述】:

我正在尝试解析这样的文本日志文件,我可以使用默认的 read.csv 来解析这个文件。

测试


它分隔了所有逗号部分,虽然没有完美地放入数据框中,但可以进行进一步的操作来改进。
但是,我似乎无法使用 readr 包

测试


所有观察结果变成 1 行,逗号之间没有分隔。
我正在学习这个包,所以任何帮助都会很棒。

{"dev_id":"f8:f0:05:xx:db:xx","data":[{"dist":[7270,7269,7269,7275,7270,7271,7265,7270,7274 ,7267,7271,7271,7266,7263,7268,7271,7266,7265,7270,7268,7264,7270,7261,7260]},{"temp":0},{"hum":0},{ "vin":448}],"time":4485318,"transmit_time":4495658,"version":"1.0"} {"dev_id":"f8:xx:05:xx:d9:xx","data":[{"dist":[6869,6868,6867,6871,6866,6867,6863,6865,6868,6869, 6868,6860,6865,6866,6870,6861,6865,6868,6866,6864,6866,6866,6865,6872]},{"temp":0},{"hum":0},{"vin" :449}],"time":4405316,"transmit_time":4413715,"version":"1.0"} {"dev_id":"xx:f0:05:e8:da:xx","data":[{"dist":[5775,5775,5777,5772,5777,5770,5779,5773,5776,5777, 5772,5768,5782,5772,5765,5770,5770,5767,5767,5777,5766,5763,5773,5776]},{"temp":0},{"hum":0},{"vin" :447}],"time":4461316,"transmit_time":4473307,"version":"1.0"} {"dev_id":"xx:f0:xx:e8:xx:0a","data":[{"dist":[4358,4361,4355,4358,4359,4359,4361,4358,4359,4360, 4360,4361,4361,4359,4359,4356,4357,4361,4359,4360,4358,4358,4362,4359]},{"temp":0},{"hum":0},{"vin" :424}],"time":5190320,"transmit_time":5198748,"version":"1.0"}

【问题讨论】:

  • 您的示例数据看起来是 JSON 格式。尝试使用`jsonlite`或类似的包来解析数据。
  • 非常感谢您的信息。我发现它使用 ndjson::stream_in

标签: r


【解决方案1】:

感谢@Dave2e 指出这个文件是 JSON 格式,我找到了使用 ndjson::stream_in 解析它的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2018-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多