小编Mar*_*ler的帖子

R:在等式中注释

是否有可能在R中的方程中进行注释?例如:

100 /* item 1 */ + 200 /* item 2 */
Run Code Online (Sandbox Code Playgroud)

给出300的答案.

我认为/* */是C代码.虽然,我不确定100 /* item 1 */ + 200 /* item 2 */会在C中运行.

如果我100 # item 1 # + 200 # item 2 #在RI中使用得到100的答案,因为在第一个之后的所有内容都#被忽略,正如我所料.

我想我可以使用:

#  item 1     item 2
   100    +    200
Run Code Online (Sandbox Code Playgroud)

我只是在想,当方程变得非常冗长而且复杂占用几条线时,在方程中进行注释可能会很好.

以下工作并返回300:

(100 +  # item 1
 200  ) # item 2
Run Code Online (Sandbox Code Playgroud)

这需要在每个注释之后添加一个新行,并且是我最接近上面的例子,只包含一行.

谢谢你的建议.

r

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

通过第一个冒号提取字符串

我有一个字符串数据集,并希望提取一个子字符串,包括第一个冒号.之前我在这里发帖询问如何提取第一个冒号之后的部分:在第一个冒号处拆分字符串 下面我列出了一些解决当前问题的尝试.

我知道^[^:]+:匹配我想保留的部分,但我无法弄清楚如何提取该部分.

这是一个示例数据集和所需的结果.

my.data <- "here is: some text
here is some more.
even: more text
still more text
this text keeps: going."

my.data2 <- readLines(textConnection(my.data))

desired.result <- "here is:
0
even:
0
this text keeps:"

desired.result2 <- readLines(textConnection(desired.result))

# Here are some of my attempts

# discards line 2 and 4 but does not extract portion from lines 1,3, and 5.
ifelse( my.data2 == gsub("^[^:]+:", "", my.data2), '', my.data2)

# returns the portion I do …
Run Code Online (Sandbox Code Playgroud)

regex string r regex-negation

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

如果字符串包含特定数字,则抓取

我有一个如下的数据集 -

> a_i
 [1] "Our-Facebook-Page/td-p/3175990"                           
 [2] "Our-Facebook-Page/td-p/3175990/page/2"  
   ....    
[17] "Data-duplicate-files/td-p/4743405"                  
[18] "Data-duplicate-files/td-p/4743405/page/2"            
[19] "Subscription-Release-1-sucks/td-p/4556739"       
[20] "Subscription-Release-1-sucks/td-p/4556739/page/2"

 > b_i
[1] "Data-duplicate-files/td-p/4743405"                  
[2] "Subscription-Release-1-sucks/td-p/4556739"
[3] "Quick-fix/td-p/4556740"
Run Code Online (Sandbox Code Playgroud)

我的目标是找到仅存在于b_i中的7位数字(例如4743405,4556739,4556740),并从包含相应数字的a_i中获取数据.所以最终输出将是这样的 -

[1] "Data-duplicate-files/td-p/4743405"                  
[2] "Data-duplicate-files/td-p/4743405/page/2"            
[3] "Subscription-Release-1-sucks/td-p/4556739"       
[4] "Subscription-Release-1-sucks/td-p/4556739/page/2""
Run Code Online (Sandbox Code Playgroud)

我能够使用strsplit(b_i,"/")获取数字但我仍然在抓取包含匹配数字的列表.是否有任何优雅的方式来映射这些数字并获取列表?

regex r pattern-matching matching string-matching

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

使用Linux Mint运行R.

我最近买了一台笔记本电脑Linux Mint 17.我以前从未使用过运行的计算机Linux(除非将R文件提交到群集).

我想R在笔记本电脑上安装.http://cran.at.r-project.org/上提供的选项 似乎是:

1. debian
2. redhat
3. suse
4. ubuntu
Run Code Online (Sandbox Code Playgroud)

我怀疑这些是不同的变种Linux.哪一个适合机器运行Linus Mint

如果我点击笔记本电脑上的终端图标并输入:

mark@mark-Vostro-1500 ~ $ lsb_release -irc
Run Code Online (Sandbox Code Playgroud)

我明白了:

Distributor ID: LinusMint
Release: 17
Codename: qiana
Run Code Online (Sandbox Code Playgroud)

启动屏幕还包括以下术语: Cinnamon 32-bit

我想从这篇文章:

R不承认Pandoc Linux Mint

Linus Mint将运行R,但我不知道这四个选项,我需要.也许这四个选项中的任何一个都可行吗?

感谢您的任何建议,并对这样一个基本问题感到抱歉.

linux r

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

使用regex从R文件夹中读取多个csv文件

我希望用来从单个文件夹中R读取多个csv文件.如果我想阅读csv我可以使用的每个文件:

list.files(folder, pattern="*.csv")
Run Code Online (Sandbox Code Playgroud)

例如,请参阅以下问题:

将多个csv文件从一个文件夹读入R中的单个数据帧

将多个.csv文件导入R

但是,我只希望一次读取文件的四个子集中的一个.下面是三个模型的四个文件的示例分组.

JS.N_Nov6_2017_model220_N200.csv
JS.N_Nov6_2017_model221_N200.csv
JS.N_Nov6_2017_model222_N200.csv
my.IDs.alt_Nov6_2017_model220_N200.csv
my.IDs.alt_Nov6_2017_model221_N200.csv
my.IDs.alt_Nov6_2017_model222_N200.csv
parms_Nov6_2017_model220_N200.csv
parms_Nov6_2017_model221_N200.csv
parms_Nov6_2017_model222_N200.csv
supN_Nov6_2017_model220_N200.csv
supN_Nov6_2017_model221_N200.csv
supN_Nov6_2017_model222_N200.csv
Run Code Online (Sandbox Code Playgroud)

如果我只想阅读,例如,parms我尝试以下文件,这是行不通的:

list.files(folder, pattern="parm*.csv")
Run Code Online (Sandbox Code Playgroud)

我假设我可能需要用来regex阅读目前四组的特定组,但我不知道.

如何分别阅读四组中的每一组?

编辑

我不确定我是否能够从这个问题的答案中获得解决方案:

列出与R中的完整路径模式匹配的所有文件

我可能不得不花费相当多的时间regex来应对这些问题的答案.下面提供的答案Mako212非常出色.

regex r

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

R中按行编号非零元素

我希望matrix按行编号非零元素。这是一个小的数据集和所需的结果。我希望在base中有一个解决方案R

my.data <- matrix(c(10,  0,  0,  0,  0,
                     0,  3,  9,  0,  1,
                     2, 12,  0,  0,  0,
                     5,  5,  5,  0,  5,
                     0,  0,  0,  0,  0), nrow = 5, byrow = TRUE)

desired.result <- matrix(c( 1,  0,  0,  0,  0,
                            0,  1,  2,  0,  3,
                            1,  2,  0,  0,  0,
                            1,  2,  3,  0,  4,
                            0,  0,  0,  0,  0), nrow = 5, byrow = TRUE)
Run Code Online (Sandbox Code Playgroud)

r matrix

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

AWS 上的并行处理“所有连接都在使用中”

我已经能够使用r6a.48xlarge Amazon Web Services实例(192 vCPUs内存1536.00 GiB)和以下R代码同时运行 20 个模型:

setwd('/home/ubuntu/')

library(doParallel)

detectCores()

my.AWS.n.cores <- detectCores()
my.AWS.n.cores <- my.AWS.n.cores - 92
my.AWS.n.cores

registerDoParallel(my.cluster <- makeCluster(my.AWS.n.cores))


folderName <- 'model000222'


files <- list.files(folderName, full.names=TRUE)

start.time <- Sys.time()

foreach(file = files, .errorhandling = "remove") %dopar% {
  source(file)
}

stopCluster(my.cluster)

end.time <- Sys.time()
total.time.c <- end.time-start.time
total.time.c
Run Code Online (Sandbox Code Playgroud)

然而,直到我用这一行减少了to fromR的数量后,上面的代码才运行:cores100192

my.AWS.n.cores <- my.AWS.n.cores - 92
Run Code Online (Sandbox Code Playgroud)

如果我尝试用 all 运行代码,192 vCPUs或者187 vCPUs我得到这个 …

parallel-processing ubuntu r amazon-ec2

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

R:可以将rpm文件与Windows一起用于可能过时的R包吗?

我试图运行需要R包'pkgDepTools'和'Rgraphviz'的代码.我收到错误消息,说这两个软件包都不适用于R版本2.15.0.

谷歌搜索出现了以下似乎有这些软件包的网页RPM Pbone:

http://rpm.pbone.net/index.php3/stat/4/idpl/17802118/dir/mandrake_other/com/R-pkgDepTools-1.20.0-1-mdv2012.0.i586.rpm.html

http://rpm.pbone.net/index.php3/stat/4/idpl/17802080/dir/mandrake_other/com/R-Rgraphviz-1.32.0-2-mdv2012.0.i586.rpm.html

但是,文件的扩展名为*.rpm,而不是我习惯的*.tar.gz或*.zip扩展名.

我使用的是Windows 7和R版本2.15.0.我可以从*.rpm文件安装R包吗?

来自维基百科*.rpm似乎可能更适合Linux:

http://en.wikipedia.org/wiki/RPM_Package_Manager

关于其他可能的解决方案,我在这里发现了几个早期的帖子,其中有关于安装R软件包的类似问题,这些软件包不适用于最新版本的R:

R中的双变量泊松回归?

套餐'GeneR'不可用

R Venn Diagram包尊贵不可用 - 替代包裹?

我已经安装了最新版本的Rtools和'devtools'软件包.虽然我对他们一无所知.

这里有一个'Rgraphviz'的存档版本:

http://cran.r-project.org/src/contrib/Archive/Rgraphviz/

但我找不到'pkgDepTools'的存档版本.

如果我可以使用上面的*.rpm文件在Windows机器上安装软件包,有人可以提供说明吗?

如果我必须使用Rtools构建它们,我可能会提出更多问题,因为以下链接中的说明对我来说很有挑战性:

http://cran.r-project.org/doc/manuals/R-admin.html#Building-from-source

为了完全透明,我希望有人可以为我建造它们,如果可能的话.虽然我认识到自己做的经验和知识,但从长远来看,这可能会得到回报.

谢谢你的任何建议.

r

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

从df中选择"europe"

我的df2:

          League freq
18       England  108
27         Italy   79
20       Germany   74
43         Spain   64
19        France   49
39        Russia   34
31        Mexico   27
47        Turkey   24
32   Netherlands   23
37      Portugal   21
49 United States   18
29         Japan   16
25          Iran   15
7         Brazil   13
22        Greece   13
14         Costa   11
45   Switzerland   11
5        Belgium   10
17       Ecuador   10
23      Honduras   10
42   South Korea    9
2      Argentina    8
48       Ukraine    7
3      Australia    6
11 …
Run Code Online (Sandbox Code Playgroud)

r wc

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