我正在尝试使用Google趋势数据,并且遇到了一些不在CRAN上的软件包(GTrends,RGoogleTrends)。
我喜欢我在RGoogleTrends软件包at this blog中看到的内容,并希望尝试一下。 RGoogleTrends包位于:http://www.omegahat.org/RGoogleTrends/
首先,我使用的是Windows操作系统,我的R控制台中有一个提升:
>Packages>Install package(s) from local zip drives ...
这导致以下结果:
> utils:::menuInstallLocal()
Error in read.dcf(file.path(pkgname, "DESCRIPTION"), c("Package", "Type")) :
cannot open the connection
In addition: Warning messages:
1: In unzip(zipname, exdir = dest) : error 1 in extracting from zip file
2: In read.dcf(file.path(pkgname, "DESCRIPTION"), c("Package", "Type")) :
cannot open compressed file 'RGoogleTrends_0.2-1.tar.gz/DESCRIPTION', probable reason 'No such file or directory'
我猜这与文件是.gz
而不是.zip
文件的事实有关。
所以,我将.gz
文件解压缩到R之外,然后将其压缩成.zip
文件(这是一种更好的方法)。现在我可以安装.zip
文件,但是当我尝试使用library
加载时,会出现以下错误:
> library(RGoogleTrends)
Error in library(RGoogleTrends) :
‘RGoogleTrends’ is not a valid installed package
我在这里做错了什么?
答案 0 :(得分:14)
你需要R版本3,你可以在这里得到例如: http://cran.cnr.berkeley.edu/bin/windows/base/R-3.0.1-win.exe
然后打开R并输入:
install.packages("devtools")
require(devtools)
install_url("http://www.omegahat.org/RGoogleTrends/RGoogleTrends_0.2-1.tar.gz")
require(RGoogleTrends)
ls("package:RGoogleTrends")
在此过程中您可能会收到很少的警告。别理他们。然后你应该能够使用这个包。
答案 1 :(得分:4)
我认为一个包的构建方式与linux不同,而不是windows,因此.gz版本无法转换为.zip
此链接表示您应该只能使用解压缩版本... http://decisionstats.com/2013/04/26/using-a-linux-only-package-in-windows-rstats/
其中的评论表明devtools或Rtools,两者都允许从gz文件直接安装
直接解压缩并使用
Setwd( "C:\\Users\\x\\Documents\\RGoogleTrends_0.2-1.tar\\RGoogleTrends_0.2-1\\RGoogleTrends\\R")
for (i in list.files()){source(i)}
使用devtools
library("devtools")
install("RGoogleTrends_0.2-1.tar.gz")
使用Rtools
我首选的方法是devtools
答案 2 :(得分:1)
我遇到了各种各样的错误,例如:
not supported in current version
cannot find DEPENDENCIES
cannot unzip
如果您正在运行Windows并为所有用户安装并且作为普通用户运行(您应该出于各种原因)安装软件包很有意思。
我最终做的是
close R
open R as admin
load base package
我已经下载了这些软件包,因此我可以离线安装,它们位于f:\software\rcontrib
然后运行:
files=list.files(path="f:/software/rcontrib",pattern="*.zip",include.dirs=TRUE)
for (i in seq(along=files)){install.packages(files[i],repos=NULL)}
这将从本地目录/公共文件共享/非Internet位置批量加载包。
然后你可以退出R.以机器上的任何用户身份运行你应该能够使用这些包。
这有望为人们节省几个小时,我浪费了大量加载并克服R中实际上是Windows安全性的错误。