【问题标题】:Parsing twitter entities from JSON to R将 Twitter 实体从 JSON 解析为 R
【发布时间】:2016-11-01 08:27:16
【问题描述】:

我已经获得了 JSON 格式的推文集合,我想将它们转换为 R data.frame。 我使用以下代码进行转换(使用 rjson 库):

lines <- readLines(file,encoding = "UTF-8")
json <- lapply(1:length(lines),function(i) as.data.frame(t(unlist(fromJSON(lines[i])))))
json <- lapply(1:length(json),function(i) json[[i]])
data <- rbind.fill(json)

数据转换执行良好,userMentionEntities 除外。我发现只能检索到第一个用户提及。转换后的 data.frame 不是 userMentionEntities 列,而是为每个 userMention 字段(id、name、screenName、start、end、_class)包含一个列,其值是第一个提到的用户的值。

有没有办法在 data.frame 的推文中包含所有用户提及? 我应该以不同的方式将推文数据转换为 R 吗?

【问题讨论】:

    标签: json r twitter


    【解决方案1】:

    streamr 包有一个有用的parser。 Twitter 对象可能会让人感到困惑(嵌套数据框内的嵌套数据框),但我想我主要是用 my parser 整理出来的。

    【讨论】:

    • 我已经尝试过您的解决方案,但我收到此错误。我是 R 新手,不知道如何解决。 Error in eval(expr, envir, enclos) : could not find function "try_catch" Calls: map_df ... as_data_frame -&gt; lst -&gt; lst_ -&gt; &lt;Anonymous&gt; -&gt; eval -&gt; eval Execution halted
    • 我的错误。这是函数 tryCatch() 的一个较小版本,您必须在使用它之前将其发送到您的工作区。如果您想编写自己的 finction,请查看 github.com/mkearney/tfse/blob/master/R/data.frame.objects.Rgithub.com/pablobarbera/streamR/blob/master/streamR/R/…。或者你可以只安装其中一个包并使用已经编写的代码。
    • 在尝试安装 tfse 数据包时,出现以下错误:Note: the specification for S3 class “AsIs” in package ‘jsonlite’ seems equivalent to one from package ‘DBI’: not turning on duplicate class definitions for this class. Warning: S3 method ‘c.string’ was declared in NAMESPACE but not found Error in namespaceExport(ns, exports) : undefined exports: get_package_pdf, get_wave, get_wave_data, gg_cols, load_tokens, sn2id, wave_path_name Error: loading failed
    • 感谢您告诉我。现在应该已经解决了,但我相信很快就会有更多问题出现!
    • 感谢您的帮助!我继续我的错误反馈:$: Error: Variables must be length 1 or 1. Problem variables: urls, user_mentions, hashtags, place_long1, place_long2, place_long3, place_long4, place_lat1, place_lat2, place_lat3, place_lat4, media_id, media_url, media_type.
    猜你喜欢
    • 2015-04-18
    • 2017-07-31
    • 2023-03-31
    • 2018-06-17
    • 2014-08-18
    • 2017-04-09
    • 2016-04-18
    • 2012-03-05
    • 2012-11-09
    相关资源
    最近更新 更多