我正在努力使用httroauth2.0 功能连接到 Google Analytics
oauth2.0_token(oauth_endpoints("google")
, oauth_app("google", client.id, client.secret)
, scope = "https://www.googleapis.com/auth/analytics.readonly")
Run Code Online (Sandbox Code Playgroud)
它在我本地的 Rstudio 中运行良好,但在基于 AWS 的 Rstudio Server 中会中断。当我同意在浏览器中传递数据并且谷歌将我重定向到页面 http://localhost:1410/?state=codehere 时出现错误
在本地 Rstudio 中启动身份验证时,浏览器响应消息 -身份验证完成。请关闭此页面并返回 R,以防 Rstudio 服务器它只是此网页不可用
我怀疑我需要更改listener_endpoint配置,但是如何更改?我应该输入我的 Rstudio 服务器地址而不是默认的 127.0.0.1 吗?或者是httr+Rtudio服务器的缺陷,我不应该打扰?
我想将中值样条和相应的置信区间带添加到ggplot2散点图中.我正在使用'quantreg'包,更具体地说是rqss函数(Additive Quantile Regression Smoothing).
在ggplot2我能够添加中值样条曲线,但不是置信区间带:
fig = ggplot(dd, aes(y = MeanEst, x = N, colour = factor(polarization)))
fig + stat_quantile(quantiles=0.5, formula = y ~ qss(x), method = "rqss") +
geom_point()
Run Code Online (Sandbox Code Playgroud)
该quantreg-package本身自带的绘图功能; plot.rqss.我可以在哪里添加置信区间(bands=TRUE):
plot(1, type="n", xlab="", ylab="", xlim=c(2, 12), ylim=c(-3, 0)) # empty plot
plotfigs = function(df) {
rqss_model = rqss(df$MeanEst ~ qss(df$N))
plot(rqss_model, bands=TRUE, add=TRUE, rug=FALSE, jit=FALSE)
return(NULL)
}
figures = lapply(split(dd, as.factor(dd$polarization)), plotfigs)
Run Code Online (Sandbox Code Playgroud)
然而,quantreg-package …
当我试图在我的工作笔记本电脑上安装软件包时,我收到了一个错误.我被告知我拥有笔记本电脑的完全权限,所以应该没有块.
我认为它可能与安装包所在的库的文件路径有关?我正在使用最新版本的R和R Studio,64位,并使用加拿大的U of T CRAN镜像站点.
以下是我尝试安装plyr时出现的内容
install.packages("plyr")
Run Code Online (Sandbox Code Playgroud)
还安装了只有源代码形式的依赖'Rcpp'包,可能需要编译C/C++/Fortran:'Rcpp''plyr'
当我尝试安装时ggplot2,这是一个很长的错误消息:
错误:依赖'stringi'不适用于包'stringr'*删除'C:/RPackages/R-3.2.3/library/stringr'在install.packages中警告:运行命令'"C:/ RPACKA~1/R -32~1.3/bin/x64/R"CMD INSTALL -l"C:\ RPackages\R-3.2.3\library"C:\ Users\MICHAE~1.COL\AppData\Local\Temp\RtmpGs24zA/downloaded_packages/stringr_1.0.0.tar.gz'在install.packages中有状态1警告:软件包'stringr'的安装具有非零退出状态错误:依赖'colorspace'不适用于软件包'munsell'*删除'C:/ RPackages /R-3.2.3/library/munsell'在install.packages中警告:运行命令'"C:/RPACKA〜1/R-32〜1.3/bin/x64/R"CMD INSTALL -l"C:\ RPackages\R-3.2.3\library"C:\ Users\MICHAE~1.COL\AppData\Local\Temp\RtmpGs24zA/downloaded_packages/munsell_0.4.3.tar.gz"在install.packages中有状态1警告:安装包' munsell'具有非零退出状态错误:依赖'摘要','plyr','reshape2','scale'不适用于包'ggplot2'*删除'C:/ RPack age/R-3.2.3/library/ggplot2'inight.packages中的警告:运行命令'"C:/RPACKA〜1/R-32〜1.3/bin/x64/R"CMD INSTALL -l"C:\ RPackages\R-3.2.3\library"C:\ Users\MICHAE~1.COL\AppData\Local\Temp\RtmpGs24zA/downloaded_packages/ggplot2_2.0.0.tar.gz"在install.packages中有状态1警告:安装包'ggplot2'具有非零退出状态下载的源包位于'C:\ Users\michael.colangelo\AppData\Local\Temp\RtmpGs24zA\downloaded_packages'中
"非零退出状态"是什么意思?是否正在尝试为安装找到一个库?>代码中提到的appData文件似乎不存在或者我无法访问它.如何将其更改为另一个本地文件夹?
突然,R Studio停止自动进入列表并输入数据框内容,mylist$然后按Tab。我得到的结果消息是
无匹配
我在非常简单的列表或数据框上尝试过:
simpledataset <- data.frame(a=rep(0,100),b=rep(1,100))
Run Code Online (Sandbox Code Playgroud)
但是,当我加载数据集Mtcars时,它会正确显示列名。
我%localappdata%\RStudio-Desktop通过重命名来重设,但未进行任何更改。
有什么可能的原因的想法吗?
我有一个data.frame,其中包含不同类型的列,如整数,字符,数字和因子.
我需要将整数列转换为数字,以便在下一步分析中使用.
实施例:test.data包括4个列(虽然有成千上万在我的真实数据组): ,age,gender,work.years和name; age并且work.years是整数,gender是因子,name是字符.我需要做的是改变age并work.years进入数字类型.我写了一段代码来做这件事.
test.data[sapply(test.data, is.integer)] <-lapply(test.data[sapply(test.data, is.integer)], as.numeric)
Run Code Online (Sandbox Code Playgroud)
尽管它有效但看起来还不够好.所以我想知道是否有更优雅的方法来实现这个功能.任何创造性的方法将不胜感激.
有一个简单的R问题但似乎无法找到答案:
我有一个这样的数据框:
assumption_val year
1.2 2015
0 2016
0 2017
0 2018
0 2019
Run Code Online (Sandbox Code Playgroud)
我希望将每个值增加到比前一年大20%,输出如下内容:
assumption_val year
1.2 2015
1.44 2016
1.73 2017
2.07 2018
2.49 2019
Run Code Online (Sandbox Code Playgroud)
如何引用前一行并将其乘以1.2来实现此目的?
谢谢!
在这个假设情景中,我对13种化学物质进行了5次不同的分析,得出每次分析中每种化学物质的分数.我创建了一个表如下:
---- Analysis1 Analysis2 Analysis3 Analysis4 Analysis5
Chem_1 3.524797844 4.477695034 4.524797844 4.524797844 4.096698498
Chem_2 2.827511555 3.827511555 3.248136118 3.827511555 3.234398548
Chem_3 2.682144761 3.474646298 3.017780505 3.682144761 3.236152242
Chem_4 2.134137304 2.596921333 2.95181339 2.649076603 2.472875191
Chem_5 2.367736454 3.027814219 2.743137896 3.271122346 2.796607809
Chem_6 2.293110565 2.917318708 2.724156207 3.293110565 2.530967343
Chem_7 2.475709113 3.105794018 2.708222528 3.475709113 3.088819908
Chem_8 2.013451822 2.259454085 2.683273938 2.723554966 2.400976121
Chem_9 2.345123123 3.050074893 2.682845391 3.291851228 2.700844104
Chem_10 2.327658894 2.848729452 2.580415233 3.327658894 2.881490893
Chem_11 2.411243882 2.98131398 2.554456095 3.411243882 3.109205453
Chem_12 2.340778276 2.576860244 2.549707035 3.340778276 3.236545826
Chem_13 …
我想对数据帧中的每个列(ad)应用if else语句,如果每个值都满足基于另一列(m)的条件,则该值保持不变,否则该值更改为零。
这是一个可重现的示例:
a <- c(10, 11, 12, 15,7,8)
b <- c(15,11,16,17,1.5,9)
c <- c(18,14,6,14,1,17)
d <- c(12,11,13,19,2,4)
p <- c(2,1,3,2.5,1.3,2.1)
m <- c(12,13,8,9,14,11)
df<- data.frame(a,b,c,d,p,m)
print(df)
a b c d p m
1 10 15.0 18 12 2.0 12
2 11 11.0 14 11 1.0 13
3 12 16.0 6 13 3.0 8
4 15 17.0 14 19 2.5 9
5 7 1.5 1 2 1.3 14
6 8 9.0 17 4 2.1 11
Run Code Online (Sandbox Code Playgroud)
这是我要执行的操作的“长篇”版本,该版本有效,但非常重复:
df$a<- ifelse((df$a-df$p)>df$m, df$a, 0) …Run Code Online (Sandbox Code Playgroud) 在 R 中,有没有办法判断矩阵是否稀疏?稀疏矩阵类有很多,比如dgCMatrix,没有is.sparseMatrix方法。
假设我有一个像这样的数据框:
group1 <- c('a','a','a','a','a','a','b','b','b','b','b','b','b','b')
group2 <- c('x','y','x','y','x','y','x','y','x','y','x','y','x','y')
value <- round(runif(14, min=0, max=1), digits = 2)
df1 <- as.data.frame(cbind(group1,group2,value))
df1$value <- as.numeric(df1$value)
Run Code Online (Sandbox Code Playgroud)
dplyr通过使用包和函数,可以轻松获得仅包含每组最大值的新数据框summarise:
df2 <- summarise(group_by(df1,group1),max_v = max(value))
Run Code Online (Sandbox Code Playgroud)
但我想要的是一个新的数据框,其中包含每组的 3 个最大值,执行类似的操作:
df2 <- summarise(group_by(df1,group1),max_v = max(value),max2_v = secondmax(value),max3_v = thirdmax(value))
Run Code Online (Sandbox Code Playgroud)
有没有办法在不使用该功能的情况下做到这一点sort?