小编lmo*_*lmo的帖子

在Windows上安装R Studio Server

是否可以在Windows机器上安装RStudio Server?我知道如果我使用AMI是可能的,但是如何在没有AMI的情况下安装它?

我在http://www.r-bloggers.com/rstudio-server-part-2-pros-of-using-rstudio-server-for-a-remote-connection/上看过:

"这主要是Windows下的一个问题,你需要安装Cygwin来运行X服务器(假设使用putty进行ssh连接).尽管它有效,但我真的不喜欢安装很多额外的软件来获取与图形支持的远程连接."

但我不明白......任何想法?

windows r rstudio rstudio-server

12
推荐指数
1
解决办法
2万
查看次数

确定Pandas Column DataType

有时,当数据导入到Pandas Dataframe时,它总是作为类型导入object.这很好,适合做大多数操作,但我正在尝试创建自定义导出功能,我的问题是:

  • 有没有办法强制Pandas推断输入数据的数据类型?
  • 如果没有,加载数据后是否有办法以某种方式推断数据类型?

我知道我可以告诉Pandas这是int,str等类型..但是我不想这样做,我希望当用户导入或添加列时,pandas可以足够聪明地知道所有数据类型.

编辑 - 导入的例子

a = ['a']
col = ['somename']
df = pd.DataFrame(a, columns=col)
print(df.dtypes)
>>> somename    object
dtype: object
Run Code Online (Sandbox Code Playgroud)

类型应该是字符串?

python dataframe pandas

12
推荐指数
1
解决办法
4万
查看次数

阻止主题列表中的引导程序

我正在尝试有效地实现块引导技术来获得回归系数的分布.主要内容如下.

我有一个面板数据集,并说公司和年份是指数.对于bootstrap的每次迭代,我希望对n个主题进行替换.从这个样本中,我需要构建一个新的数据框,它是rbind()每个采样主题的所有观察的堆栈,运行回归,并拉出系数.重复一堆迭代,比如说100.

  • 每个公司都可能被多次选中,因此我需要在每个迭代的数据集中多次包含它.
  • 使用循环和子集方法,如下所示,似乎计算繁琐.
  • 请注意,对于我的实际数据帧,n和数字迭代比下面的示例大得多.

我的想法最初是使用split()命令按主题将现有数据框分成列表.从那里,使用

sample(unique(df1$subject),n,replace=TRUE)
Run Code Online (Sandbox Code Playgroud)

获取新列表,然后可能quickdfplyr包中实现构造新的数据框.

示例慢代码:

require(plm)
data("Grunfeld", package="plm")

firms = unique(Grunfeld$firm)
n = 10
iterations = 100
mybootresults=list()

for(j in 1:iterations){

  v = sample(length(firms),n,replace=TRUE)
  newdata = NULL

  for(i in 1:n){
    newdata = rbind(newdata,subset(Grunfeld, firm == v[i]))
  }

  reg1 = lm(value ~ inv + capital, data = newdata)
  mybootresults[[j]] = coefficients(reg1)

}

mybootresults = as.data.frame(t(matrix(unlist(mybootresults),ncol=iterations)))
names(mybootresults) = names(reg1$coefficients)
mybootresults

  (Intercept)      inv    capital
1    373.8591 6.981309 -0.9801547
2    370.6743 6.633642 …
Run Code Online (Sandbox Code Playgroud)

regression r plyr statistics-bootstrap

11
推荐指数
2
解决办法
6832
查看次数

如何用R设置','作为小数分隔符

即使我的Windows 7区域设置指定使用","作为小数分隔符,R和RStudio给我一个"." 分隔器.有没有办法改变这个?请注意下面语言环境中的"LC_NUMERIC = C"设置:这似乎是由R或RStudio强制执行的.

由于我正处于长期项目的中间,我不愿意立即改为R 3.0和最后一个RStudio版本.有谁知道这些版本中的小数分隔符问题是否有任何变化?

我使用prettyNum解决单个数字的问题,但我不知道如何在表上使用它.

sessionInfo()R版本2.15.3(2013-03-01)平台:x86_64-w64-mingw32/x64(64位)

locale:
[1] LC_COLLATE=Spanish_Argentina.1252  LC_CTYPE=Spanish_Argentina.1252   
[3] LC_MONETARY=Spanish_Argentina.1252 LC_NUMERIC=C                      
[5] LC_TIME=Spanish_Argentina.1252    

attached base packages:
[1] grid      splines   stats     graphics  grDevices utils     datasets  methods  
[9] base     

other attached packages:
 [1] ascii_2.1          randomForest_4.6-7 pander_0.3.3       fpc_2.1-5         
 [5] flexmix_2.3-10     mclust_4.0         cluster_1.14.3     MASS_7.3-23       
 [9] Gmisc_0.5.0.0      testthat_0.7       boot_1.3-7         rms_3.6-3         
[13] miscTools_0.6-16   stringr_0.6.2      Hmisc_3.10-1       survival_2.37-2   
[17] lattice_0.20-13    xtable_1.7-1       pixmap_0.4-11      RColorBrewer_1.0-5
[21] ade4_1.5-1        

loaded via a namespace (and not attached):
[1] digest_0.6.3      evaluate_0.4.3    modeltools_0.2-19 stats4_2.15.3    
[5] tools_2.15.3  
Run Code Online (Sandbox Code Playgroud)

r separator

11
推荐指数
1
解决办法
2万
查看次数

RStudio的半透明度

我正在尝试在回归线周围创建一个半透明置信区域:

library(car)
library(ggplot2)
library(effects)

mod <- lm(salary~yrs.service+sex, data=Salaries)

yrseff <- as.data.frame(allEffects(mod)[[1]])

ggplot(yrseff, aes(x=yrs.service, y=fit))+
geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.2)+
geom_line(colour="darkgreen", size=2)
Run Code Online (Sandbox Code Playgroud)

我收到此错误消息:

警告消息:在grid.Call.graphics(L_polygon,x $ x,x $ y,index)中:此设备不支持半透明:每页仅报告一次

但是,如果我首先打开一个pdf设备(如下面的代码所示),它会创建一个带有半透明功能区的pdf文件.

pdf()
ggplot(yrseff, aes(x=yrs.service, y=fit))+
geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.2)+
geom_line(colour="darkgreen", size=2)
dev.off()
Run Code Online (Sandbox Code Playgroud)

可能是什么问题?有没有办法获得半透明度而无需保存为pdf?

我在Ubuntu 12.04上使用RStudio,这是我的会话信息.

> sessionInfo()
R version 3.0.3 (2014-03-06)
Platform: i686-pc-linux-gnu (32-bit)

locale:
[1] LC_CTYPE=en_CA.UTF-8       LC_NUMERIC=C               LC_TIME=en_CA.UTF-8       
[4] LC_COLLATE=en_CA.UTF-8     LC_MONETARY=en_CA.UTF-8    LC_MESSAGES=en_CA.UTF-8   
[7] LC_PAPER=en_CA.UTF-8       LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] grid      stats     graphics  grDevices utils     datasets  methods   base     

other attached packages: …
Run Code Online (Sandbox Code Playgroud)

pdf r alpha-transparency ggplot2 rstudio

11
推荐指数
2
解决办法
6222
查看次数

生存不承认正确的审查数据

我正在尝试使用survival包在R中进行生存分析.我只有右删失数据(事件发生时间,事件"1"或检查员"0").我使用该Surv函数创建了一个生存对象.但是,survdiffcoxph给出错误,表明他们不会将其识别为右删失数据.有什么建议?

> surv.dfs <- Surv(DaysFromTx,Event)
> surv.dfs
[1]   99:1  334:1 1024+  1341+   210+  1069+   890+  1242+   255+   228+   349+   300+   717+     2+   657+   995+   491+  1544+   265:1  440+   362:1  845+ 
[23]  669+  1176+   718+   768+  1171+  2276+  1152+   207+  1138+  1002+   942+   644+  1110+   179:1 1535+   841+   923+   904+   367:1  959+   746+  1256+ 
[45]   83:1  439:1   69+   449+   591+   983+   787+   704+   825+   747+    28+    41+   907+   181:1  371+   388+   166:1  702+ …
Run Code Online (Sandbox Code Playgroud)

r survival-analysis

11
推荐指数
1
解决办法
9367
查看次数

如何在R中获取变量的环境

我想知道是否还有获得声明变量的环境.假设我已经向环境声明了一个变量,并希望使用该变量的环境来声明更多变量.类似于getEnv("变量")

variables scope env r

10
推荐指数
3
解决办法
8781
查看次数

传奇中的垂直空间

我无法格式化我的传奇.我想增加图例的每个元素之间的垂直空间.

我发布它产生的图像和代码,以便你可以帮助我.

这是相对于图例的代码:

par(fig = c(0, 1, 0, 1), oma = c(0, 0, 0, 0), mar = c(0, 0, 0, 0), new = TRUE)
legend("right", c("$\\lambda < \\lambda_{cr}$ ", "$\\lambda < \\lambda_{cr}$", 
"$\\lambda = \\lambda_{cr}$ ", "$\\lambda = \\lambda_{cr}$ "), xpd = TRUE, 
inset = c(0,0), bty = "n", lty = c(1, 1, 1, 1), lwd=2, col = c("black","green4","red","blue"))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

plot r graph legend

10
推荐指数
1
解决办法
1万
查看次数

ifelse没有别的

基本上在SAS中,我可以在没有else的情况下执行if语句.例如:

if species='setosa' then species='regular';
Run Code Online (Sandbox Code Playgroud)

没有其他需要.

如何在R中做到?这是我下面的脚本不起作用:

attach(iris)

iris2 <- iris
iris2$Species <- ifelse(iris2$Species=='setosa',iris2$Species <- 'regular',iris2$Species <- iris2$Species)
table(iris2$Species)
Run Code Online (Sandbox Code Playgroud)

r

10
推荐指数
1
解决办法
3万
查看次数

分组和计数以获得贴近

我想每计数country次数的数量statusIS open和的次数statusclosed.然后计算closerate每个country.

数据:

customer <- c(1,2,3,4,5,6,7,8,9)
country <- c('BE', 'NL', 'NL','NL','BE','NL','BE','BE','NL')
closeday <- c('2017-08-23', '2017-08-05', '2017-08-22', '2017-08-26', 
'2017-08-25', '2017-08-13', '2017-08-30', '2017-08-05', '2017-08-23')
closeday <- as.Date(closeday)

df <- data.frame(customer,country,closeday)
Run Code Online (Sandbox Code Playgroud)

添加status:

df$status <- ifelse(df$closeday < '2017-08-20', 'open', 'closed') 

  customer country   closeday status
1        1      BE 2017-08-23 closed
2        2      NL 2017-08-05   open
3        3      NL 2017-08-22 closed
4        4      NL 2017-08-26 closed
5        5      BE 2017-08-25 closed …
Run Code Online (Sandbox Code Playgroud)

grouping r counting dataframe

10
推荐指数
1
解决办法
254
查看次数