小编use*_*829的帖子

中断/退出脚本

我有一个程序可以进行一些数据分析,并且只有几百行.

在程序的早期,我想做一些质量控制,如果没有足够的数据,我希望程序终止并返回到R控制台.否则,我希望其余的代码执行.

我已经尝试了break,browser并且quit它们都没有停止执行程序的其余部分(并且quit停止执行以及完全退出R,这不是我想要发生的事情).我的最后一招是创建如下if-else声明:

 if(n < 500){}
 else{*insert rest of program here*}
Run Code Online (Sandbox Code Playgroud)

但这似乎是糟糕的编码实践.我错过了什么吗?

r exit break

73
推荐指数
6
解决办法
12万
查看次数

抓住了segfault,内存没有映射错误

我试图在R中找到1347乘209974矩阵的列的相关性.每次我这样做(用简单的命令cor(matrix),我得到消息:

 *** caught segfault ***
address 0xffffffffd058abf8, cause 'memory not mapped'

Traceback:
 1: cor(matrix)
Run Code Online (Sandbox Code Playgroud)

是因为矩阵太大了吗?

如果是这样,除了使用两个连接的for循环找到每个唯一行之间的相关性之外,是否有人对如何找到相关性有任何建议?(我试过这个,需要几个小时.)

我已经检查过,并且所有行的标准偏差都不为零,所以我知道这不是没有计算相关性的原因.

r

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

如何防止matplot通过线条样式循环?

如何阻止matplot循环播放不同的线条样式?现在我正在尝试以下两种方式的代码:

matplot(cbind(c(1,3,7,3), c(2,4,4,7)), type=c("l","l"), col=1)

matplot(cbind(c(1,3,7,3), c(2,4,4,7)), type="l", col=1)
Run Code Online (Sandbox Code Playgroud)

即使我试图明确告诉它只使用折线图,它也会循环遍历所有类型的虚线.

r

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

各种尺寸的所有组合?

当我搜索"R中的矢量组合"时,SO上有数以千计的结果,但我无法找到问题的答案.如果它是重复的道歉:

我有一个向量(1,2,3,4),我想找到所有组合(n选择2)到(n选择n).换句话说,对于这个向量我想要:

1,2,3,4
1,2,3
1,2,4
1,3,4
2,3,4
1,2
1,3
1,4
2,3
2,4
3,4
Run Code Online (Sandbox Code Playgroud)

并且希望代码可以推广,这样一旦我有一个更大的向量,它就可以推广.

谢谢!

combinations r

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

在R中有效地计算相关性?

这是一个优化问题,我希望你有创意SO用户可能有答案.

我有一个大矩阵(500万x 2),有两个值:时间和类型.本质上,每个"类型"是它自己的时间序列 - 下面的数据代表三个不同的时间序列(一个用于A,一个用于B,一个用于C).有2000种不同的"类型".

mat
     time type
[1,]  50   A
[2,]  50   A
[3,]  12   B
[4,]  24   B
[5,]  80   B
[6,]  92   B
[7,]  43   C
[8,]  69   C
Run Code Online (Sandbox Code Playgroud)

找到这2000个时间序列之间的相关性,最有效的方法是什么?我目前正在生成一个矩阵,每次发生事件时都有不同的二进制位,我填充该矩阵,在该时隙中发生了每个"类型"的事件数.在填充该矩阵之后,我遍历每对"类型"并找到相关性.这是非常低效的(约5小时).

如果存在一种by='type'corR函数中实现特征的方法,我的整个问题可以解决吗?

感谢您的任何见解.

optimization r correlation

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

为什么导出的行名在R中总是偏1?

在R中,导出CSV时为什么列名总是偏离1?

x=matrix(c(1,2,3,4), nrow=2)
rownames(x) <- c("row1", "row2")
colnames(x) <- c("col1", "col2")

>x
          col1 col2
    row1    1    3
    row2    2    4

write.table(x,"/Users/username/Desktop/x.csv", sep=",")
Run Code Online (Sandbox Code Playgroud)

列名始终向左移动一列:

*The resulting CSV looks like this when opened in Excel:*
 col1   col2    
 row1   1      3
 row2   2      4

*The resulting CSV looks like this when opened in TextEdit:*
 "col1","col2"
 "row1",1,3
 "row2",2,4
Run Code Online (Sandbox Code Playgroud)

我一直有这个问题,但现在我的代码被用于专业目的,而不仅仅是玩数据,我需要弄清楚如何避免这种情况.我觉得这是一个相当容易的修复.

r

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

标签 统计

r ×6

break ×1

combinations ×1

correlation ×1

exit ×1

optimization ×1