I am upgrading a project I had working previously. This code worked a few months ago, in the meantime I have upgraded R and plyr. I think I was on R1.10 and now I am on R1.35, I am not sure what version of plyr I was running before but my current installed version is 1.2.
Here is what I am trying to run:
library(plyr)
library(twitteR)
tw <- head(ldply(searchTwitter("rstats", session=getCurlHandle(), n=10), function(x) data.frame(text=text(x), favorited=favorited(x), created=created(x), truncated=truncated(x), id=id(x), statusSource=statusSource(x), screenName=screenName(x))))
I always get the same error message now.
Error in as.double(y) :
cannot coerce type 'S4' to vector of type 'double'
Any advice would be appreciated.
Thanks,
Jason
In amongst your confusion about what versions you are running (there wasn’t an R version 1.35!!), there are several issues. (To find out what versions of R and packages you are running, try
sessionInfo().)First, the error you are getting comes from your use of
text(). It should bestatusText().Second, it seems like some of the functions/methods are not being exported in the package NAMESPACE. You can make it work by specifying the correct namespace when calling the function, as per the example below, but you should email the package maintainer (Jeff Gentry – contact details on CRAN). You can refer to unexported functions using the
:::operator.:::takes the package/namespace name on the left-hand side, with the function name on the right hand side, e.g.:Here is a full working version of your example: