在一条推文中为几个提及创建边(行),问题

时间:2015-07-08 14:35:20

标签: r twitter edges

在戴夫回答“在一条推文中为几个提及创建边缘(行)”时,运行了以下脚本:

plyr::ddply(tweets, c("text"), function(x){
mention <- unlist(stringr::str_extract_all(x$text, "@\\w+"))
# some tweets do not contain mentions, making this necessary:
if (length(mention) > 0){
    return(data.frame(mention = mention))
} else {
    return(data.frame(mention = NA))    
}}) 

我的推特列表有问题。我收到了错误:

Error in if (empty(.data)) return(.data) : 
  missing value where TRUE/FALSE needed.

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

比较这两个结果:

if(NA > NA) 'yes' else 'no'
#Error in if (NA > NA) "yes" else "no" : 
#  missing value where TRUE/FALSE needed

if(NA > NA && !is.na(NA > NA)) 'yes' else 'no'
#[1] "no"

第一个表达式返回的是您出于类似原因收到的相同错误消息。条件测试需要TRUEFALSE才能继续。我的测试NA > NA没有真值,因此返回NA。因此,在第二次测试中,我添加了额外的检查以忽略NA条件结果。