小编RIn*_*atM的帖子

在Web浏览器中运行多个RStudio实例

我在远程aws服务器(ubuntu)上安装了RStudio服务器,并希望同时运行多个项目(其中一个项目需要很长时间才能完成).在Windows上有一个简单的GUI解决方案,如"在新窗口中打开项目".rstudio服务器有类似的东西吗?

简单的问题,但没有找到解决方案,除了Macs提供的相关问题

使用项目运行多个rstudio会话

但怎么样?

ubuntu r amazon-web-services rstudio-server

15
推荐指数
1
解决办法
8615
查看次数

CLion无法解析外部库中的标头

前段时间我使用XCode在C++ 1x中启动了一个大的头库.库的当前布局是()类似(部分输出ls -R sponf)

sponf/sponf:
ancestors        sponf.h                sponf_utilities.h
categories       sponf_children.h       utilities
children         sponf_macros.h           

sponf/sponf/ancestors:
function.h       meter.h        set.h                    simulation.h

sponf/sponf/categories:
free_space.h     prng.h         random_distribution.h    series.h

sponf/sponf/children:
distributions    histogram.h    random                   simulations
meters           numeric        series                   spaces

sponf/sponf/children/distributions:
arcsine_der.h    exponential.h
box_muller.h     uniform.h

sponf/sponf/children/meters:
accumulator.h    timer.h

#... other subdirs of 'children' ...

sponf/sponf/utilities:
common_math.h    limits.h       string_const.h

#... other directories ...
Run Code Online (Sandbox Code Playgroud)

我想将这个项目移植到CLion,这似乎是一个非常好的IDE(基于类似的AndroidStudio IDE),但我遇到了一些麻烦.

小测试程序

我试过这个小程序作为测试:

#include <iostream>
#include <sponf/sponf.h>

using namespace std;

int main() {
    using space = sponf::spaces::euclidean_free_space<double, 3>;
    sponf::simulations::random_walk<space> rw;

    rw.step(1);

    std::cout << …
Run Code Online (Sandbox Code Playgroud)

c++ header-files header-only clion

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

R具有data.table的多列的多个统计信息

我希望获得与R中相同的结果,使用data.table汇总多个列,但需要几个汇总函数.

这是一个例子

data <- as.data.table(list(x1 = runif(200), x2 = 10*runif(200), group = factor(sample(letters[1:2]))))

res <- data[, rbindlist(lapply(.SD, function(x) {
              return(list(name = "varname", mean = mean(x), sd = sd(x)))
           }))
          , by = group, .SDcols = c("x1", "x2")
          ]
Run Code Online (Sandbox Code Playgroud)

并得到以下结果:

   group    name      mean        sd
1:     b varname 0.5755798 0.2723767
2:     b varname 5.5108886 2.7649262
3:     a varname 0.4906111 0.3060961
4:     a varname 4.7780189 2.9740149
Run Code Online (Sandbox Code Playgroud)

如何在第二列中获取列名('x1','x2')?我想我需要替换rbindlist其他东西,但是什么?有没有简单的解决方案?

r data-manipulation data.table

9
推荐指数
1
解决办法
2082
查看次数

如何通过API获取有关使用Mandrill发送的电子邮件的统计信息?

我找不到一种方法来获取与通过Mandrill应用程序发送的一封电子邮件相关的所有统计数据?你使用Mandrill api来获取统计数据吗?

email mandrill

7
推荐指数
1
解决办法
2492
查看次数

快速分割字符串并在data.table中转换为长格式

我做了以下事情

library(data.table)
library(stringr)        
dt <- data.table(string_column = paste(sample(c(letters, " "), 500000, replace = TRUE)
                                     , sample(c(letters, " "), 500000, replace = TRUE)
                                     , sample(1:500000)
                                 , sep = " "), key = "string_column") 

split_res <- dt[, list(name = unlist(str_split(string_column, '\\s+'))), by = string_column]
Run Code Online (Sandbox Code Playgroud)

对于真实数据,它需要大约.1小时处理dt(10M行)并创建split_res(18M行)出于好奇 - 有没有办法加快进程?也许unlist + str_split这不是正确的方法吗?

substring r data-manipulation data.table

7
推荐指数
1
解决办法
2312
查看次数

R以循环方式在滑动演示中生成幻灯片

我想创建N个幻灯片,以使用slidify包报告N个(大)数据子集的描述性统计.在之前的讨论中创建参数R降价文档?结合brewknitr建议实现这一目标.

我想知道slidify这个任务是否有自己的解决方法?我想迭代数据来填充幻灯片比纯文本更合乎逻辑......

一个最小的例子(从上面的问题,我需要幻灯片而不是段落)

```{r loopResults, echo=FALSE, results='asis'}
results = list(result1 = data.frame(x=rnorm(3), y=rnorm(3)), result2=data.frame(x=rnorm(3), y=rnorm(3)))

for(res in names(results)) {
  cat(paste("<h3>Results for: ", res, "</h3>>"))

  plot(results[[res]]$x, results[[res]]$y)
}
Run Code Online (Sandbox Code Playgroud)

markdown r r-markdown slidify

6
推荐指数
1
解决办法
1559
查看次数

R Rstudio控制台中的编码错误(但在R GUI和ggplot2中没问题)

我在Windows 8.1(en)和我的R控制台不会理解俄语字符并产生这样的smth(在控制台和我运行R文件时)

> x <- "??????"
> print(x)
[1] "Ïðèâåò"
Run Code Online (Sandbox Code Playgroud)

我知道如果将CP1251保存为CP1252,就会发生这种情况.我将所有R选项设置为UTF-8,将源文件设置为UTF-8,但这没有帮助.我还设置了sysLocale俄罗斯作为这里,但一无所获.来自RStudio faq的一些建议也没有帮助.奇怪的是,ggplot2工作得非常好

dt <- as.data.frame(cbind(x = c("????", "???"), y = c(3, 5)))
ggplot(dt, aes(x=x, y=y))+geom_bar() + xlab("????")
Run Code Online (Sandbox Code Playgroud)

这是我的sessionInfo()

R version 3.0.2 (2013-09-25)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=Russian_Russia.1251  LC_CTYPE=Russian_Russia.1251    LC_MONETARY=Russian_Russia.1251 LC_NUMERIC=C                   
[5] LC_TIME=Russian_Russia.1251    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     
Run Code Online (Sandbox Code Playgroud)

我使用的是RStudio的最新版本,但开发版本也无济于事

更新:

> Encoding(x)
[1] "unknown"
> getOption("encoding")
[1] "native.enc"
Run Code Online (Sandbox Code Playgroud)

如果我使用RGUI,Sys.setlocale("LC_ALL", "Russian")它将允许

> print(x)
[1] "??????"
Run Code Online (Sandbox Code Playgroud)

我还检查了俄语版的Windows - Rstudio工作正常

encoding r rstudio

6
推荐指数
1
解决办法
6318
查看次数

当数据为空时从ggvis返回的正确方法是什么?

我的ggvis图取决于几个输入字段,它们像输入数据的过滤器一样工作.对于某些组合,结果数据框为空,ggvis抛出错误并中断整个应用程序.我试着把

if(nrow(inputdataframe) == 0) return NULL 
if(nrow(inputdataframe) == 0) return ggvis()
Run Code Online (Sandbox Code Playgroud)

这没有帮助.在这种情况下,什么是正确的返回参数(我想要一个空图或一些文本消息)?

server.R

effvis <- reactive ({
      dta <- siteeff()
      if(nrow(dta)  == 0) return(NULL)
      dta %>%
          ggvis(~param.value, ~yvar) %>%
          layer_points( size := 50, size.hover := 200) %>%
          set_options(width = 800, height = 500)
})
effvis %>% bind_shiny("effplot")
Run Code Online (Sandbox Code Playgroud)

ui.R -

ggvisOutput("effplot")
Run Code Online (Sandbox Code Playgroud)

更新

我不想在数据为空时显示所有数据(如此处所示)这令人困惑

r shiny ggvis

6
推荐指数
1
解决办法
1391
查看次数

使用 Rstudio 服务器时在 httr 中配置 listener_endpoint

我正在努力使用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服务器的缺陷,我不应该打扰?

google-analytics r rstudio httr rstudio-server

5
推荐指数
1
解决办法
259
查看次数

使用条件子集 data.table

如何对大型data.table(data.table包)的子样本进行采样?是否有更优雅的方式来执行以下操作

DT<- data.table(cbind(site = rep(letters[1:2], 1000), value = runif(2000)))
DT[site=="a"][sample(1:nrow(DT[site=="a"]), 100)]
Run Code Online (Sandbox Code Playgroud)

猜猜有一个简单的解决方案,但无法选择正确的措辞进行搜索。

更新: 更一般地,如何在i不为行号创建临时列的情况下访问 data.table参数中的行号?

r data-manipulation data.table

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

R:具有多行的switch语句

在R中:我有一个矩阵,其中一列按8种类型分类:a,b,c,d,e,f,g,h.我需要使用其他列中的数据为每种类型执行不同的计算.我想使用switch()函数来自动循环每种类型,并说明每种类型的差异计算; 但是,我在网上看到的所有内容都只显示了每个交换机的一个线路交换机计算语法的示例.

下面是使用switch()帮助中提供的代码的示例.我知道mean()是一个函数,但是我们只是说这个例子,它不是一个函数,因为我只是想说明我不知道语法(并且我的在线研究中没有明确说明) :

centre <- function(x, type) {
  switch(type,
     mean = {
           total.sum<-sum(type)
           mean = total.sum/length(type)
     },
     median = median(x),
     trimmed = mean(x, trim = .1))
}
Run Code Online (Sandbox Code Playgroud)

r switch-statement

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

从大型(&gt; 100 MIo)postgresql 表中删除重复行(根据条件截断?)

这里一样,我有一个大表,用于存储我们系统中的所有事件,对于一种事件类型,我有重复的行(多次错误地从另一个系统导出)。我需要删除它们以清除统计数据。上面提出的解决方案是

  • 将记录(不重复)插入到临时表中,
  • 截断原始表并将它们重新插入。

但在我的情况下,我只需要删除一类事件,而不是所有行,这对于truncate. 我想知道我是否可以从 postgres USING 语法中受益,就像这个SO 答案一样,它提供了以下解决方案 -

DELETE FROM user_accounts 
USING user_accounts ua2   
WHERE user_accounts.email = ua2.email AND user_account.id < ua2.id;
Run Code Online (Sandbox Code Playgroud)

问题是我在这个大表中没有 id 字段。那么在这种情况下最快的决定是什么?从临时表中删除+插入是唯一的选择吗?

postgresql sql-delete

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