为什么Rtweet的parse_stream()函数返回NULL对象?

时间:2019-10-30 17:26:59

标签: r json rtweet

我有一系列.json文件,每个文件包含从500到10,000条Tweet(每个3-40 MB)中捕获的数据。我正在尝试使用rtweet的parse_stream()函数将这些文件读入R并将tweet数据存储在数据表中。我尝试了以下方法:

tweets <- parse_stream(path = "india1_2019090713.json")

没有错误消息,该命令创建一个tweets对象,但该对象为空(NULL)。我已经尝试了其他.json文件,结果是一样的。有没有人遇到过这种行为/我做错了什么吗?我希望给rtweet新手提供任何建议!

我正在使用rtweet 0.6.9版。

非常感谢!

1 个答案:

答案 0 :(得分:0)

作为更新和部分答案: 我在原始问题上没有取得任何进展,但是使用jsonlite包取得了很多成功,该包能够完全读取包含Tweet数据的大型复杂.json文件。

library(jsonlite)

我将fromJSON()函数用作详细的here。我发现我需要编辑原始.json文件以匹配所需的结构,并在文件的开头和结尾使用方括号([]),并在每个Tweet末尾的每个换行符前添加逗号。然后:

tweetsdf <- fromJSON("india1_2019090713.json", simplifyDataFrame = TRUE, flatten = TRUE)

simplifyDataFrame确保将内容保存为每个Tweet一行的数据框,并且flatten折叠大多数嵌套的Tweet attributes来为每个子值分隔列而不是生成充满笨拙列表结构的列。