如何用R中的奇怪格式解析JSON

时间:2018-01-17 15:34:03

标签: json r parsing

我有一个JSON,即使使用在线解析器也无法传输: - / 我已经尝试过这个,但它出错了

boolean

错误

df <- fromJSON("data/part-f1.json", simplifyVector = TRUE, simplifyDataFrame = simplifyVector, simplifyMatrix = simplifyVector, flatten = FALSE)

示例JSON:

{ “TS”:1512317797740, “用户ID”: “51a35e52c6fba44bd8edba65778c607e”, “会话ID”: “4691122171951068866”, “remote_ip”: “93.72.204.143”, “平台”: “AndroidPlayer”, “sdk_ver”:“u2017 .1.1f1“,”debug_device“:false,”user_agent“:”Dalvik / 2.1.0(Linux; U; Android 7.0; XT1650 Build / NPLS25.86-30-5)“,”submit_time“:1512292759927,”name “:”邮箱已激活“,”custom_params“:null,”appid“:”4dfb4d07-b463-43d4-ba0b-4c6b967967c8“,”type“:”custom“} { “TS”:1512318029084, “用户ID”: “51a35e52c6fba44bd8edba65778c607e”, “会话ID”: “4691122171951068866”, “remote_ip”: “93.72.204.143”, “平台”: “AndroidPlayer”, “sdk_ver”:“u2017.1.1f1 “,”debug_device“:false,”user_agent“:”Dalvik / 2.1.0(Linux; U; Android 7.0; XT1650 Build / NPLS25.86-30-5)“,”submit_time“:1512292986741,”name“:”车轮更换“,”custom_params“:{”车轮尺寸“:”17“,”车轮名称“:”Ratikon“},”appid“:”4dfb4d07-b463-43d4-ba0b-4c6b967967c8“,”类型“:”自定义“} { “TS”:1512287567257, “用户ID”: “3996da04b2fef4ac7bf3a47c5b149625”, “会话ID”: “5914000471379591192”, “remote_ip”: “90.178.242.246”, “平台”: “AndroidPlayer”, “sdk_ver”:“u2017.1.1f1 “,”debug_device“:false,”user_agent“:”Dalvik / 2.1.0(Linux; U; Android 5.1.1; HUAWEI M2-A01W Build / HUAWEIM2-A01W)“,”submit_time“:1512287567576,”name“: “场景输入”,“custom_params”:{“场景名称”:“_场景/ intro_scene”},“appid”:“4dfb4d07-b463-43d4-ba0b-4c6b967967c8”,“类型”:“自定义”}

正如您所看到的,在在线分析器中,我得到多个错误的根源。 我需要从这个JSON创建一个数据帧,但我真的需要帮助。 感谢

2 个答案:

答案 0 :(得分:1)

这不是一个真正的JSON文件,它是一个JSONLines文件。不同之处在于,虽然整个文件本身不是有效的JSON文件,但文件中的每一行都是一个JSON对象,每个对象由一个新的行字符分隔。

您可以使用jsonlite::stream_in功能读取此类数据。这样的事情应该有效

jsonlite::stream_in(file("data/part-f1.json"))

答案 1 :(得分:1)

它也被称为ndjson,您可以使用更快更好的&amp;专门建造的ndjson::stream_in()