我从下面的页面中提取了JSON:
library(jsonlite)
results <- fromJSON("https://www.reddit.com/r/gardening/comments/1196opl/tree_surgeon_butchered_my_tree_will_it_be_ok/.json")
final = results$data
当我检查输出时,我可以看到,即使输出是"列表"格式,输出中似乎也有一个"表格数据框"结构:
t3, NA, gardening, , FALSE, NA, 0, FALSE, Tree surgeon butchered my tree - will it be ok?, r/gardening, FALSE, 6, NA, 0, 140, NA, all_ads, FALSE, t3_1196op
- 我的问题:**基于以上所述,是否有可能以某种方式将此输出转换为 Dataframe ?
我尝试了以下代码:
dataframe_list = as.data.frame(final)
代码运行-但输出仍然不是表格/ Dataframe 输出。
最后,我希望得到以下格式的结果:
comment_id comment_text
1 1 I like gardening!
2 2 I dont like to garden!
3 3 its too cold outside?
4 4 try planting something different?
5 5 garden is fun!
有人能教我怎么做吗?
谢谢!
- 注意:如果您查看实际网站https://www.reddit.com/r/gardening/comments/1196opl/tree_surgeon_butchered_my_tree_will_it_be_ok/.json-所需文本似乎位于标记"body:"和"edited"**之间:
- 也许我处理这个问题的方法不对,但有更好的方法?**
2条答案
按热度按时间4ioopgfo1#
下面是使用
pluck()
、bind_rows()
和unnest()
的一种方法:输出:
lx0bsm1f2#
为了解析来自Reddit的JSON,您可能需要检查RedditExtractoR包,
get_thread_content()
返回2个 Dataframe 的列表,一个用于线程,另一个用于注解:创建于2023年2月23日,使用reprex v2.0.2