解析包含json的csv

时间:2019-05-22 13:01:15

标签: json csv parsing

我的csv很小(120mb)。

其中一列包含一个如下所示的json字符串。

{"A":"Dart","B":"en","C":"[gb]","D":"4,5,7","E":"2019-03-07"}

我需要从一个csv解析此json,并将其转换为数据帧或另一个将包含A / B / C / D / E列和一行中对应值的csv。

我尝试使用不同的库用python和pandas解析它,但是没有运气,数据似乎总是被破坏了。

我查看了csv的原始文本视图,发现原始数据看起来像这样,而且解析器似乎由于某种原因无法咀嚼它。

"{""A"":""Dart"",""B"":""en"",""C"":""[gb]"",""D"":""4,5,7"",""E"":""2019-03-07""}"

1 个答案:

答案 0 :(得分:0)

如果您共享一个源文件,可以为您提供帮助。
这是在CSV中加双引号的标准方法。

我要插入一个有关如何获得所需输出的示例。我正在使用Miller(http://johnkerl.org/miller/doc/)。

使用

echo '"{""A"":""Dart"",""B"":""en"",""C"":""[gb]"",""D"":""4,5,7"",""E"":""2019-03-07""}"' | \
mlr --c2n --implicit-csv-header cat | \
mlr --j2c cat

您将拥有

A,B,C,D,E
Dart,en,[gb],"4,5,7",2019-03-07