[英]Converting weirdly formatted file to csv using Python
我想使用 Python 将格式奇怪的文件转换为 csv。
该文件如下所示:
[
{"kind": 342, "type": b, "pattern": {"circle": ["Oo0"]}, "number": 5}
...
...
...
]
信息本身在上下文中是有意义的。 (我保证!)
无论如何,有几行像上面那样,为了正确分析数据,我需要先将其格式化为 csv。
我希望嵌套对象只是模式的值。
我知道 pandas 可以转换为 csv,但首先它需要能够理解我的文件,对吗?
无论如何,任何帮助将不胜感激!
由于您只是转换一次,因此这种奇怪的方式可能就足够了:
exec('x.append({"kind": 342, "type": b, "pattern": {"circle": ["Oo0"]}, "number": 5})')
也许是一个奇怪的解决方案,它会在“类型”上引发错误,因为 b 未定义。 但是如果你知道你将拥有什么类型,你可以定义它们,比如b = "b"
或
for type in "abcd":
exec(f'{type} = "{type}"').
然后对 csv 进行任何您需要的写入操作。
我最终使用了 JSON 转换器,因为无论如何文件本身都非常接近 JSON 文件。
如果不是因为文件深处某些行的问题,评论中的建议很可能会起作用。 那里的嵌套对象格式错误。
[..
{... "pattern":{"circle":["OO"]}, "direction":"west":[42]}
...]
缺少一些{}
。
所以问题不是真正的格式,而是一个有问题的文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.