小编Mor*_*ten的帖子

将大型异常文件导入R.

第一次在这里发布海报,所以我会尝试在我需要的帮助下尽可能清楚自己.我是R的新手,这是我第一次真正的独立编程经验.

我有大约2.5年的股票刻度数据,每天都有自己的文件.文件是.txt,包含大约20-30万行,平均每个360mb.我现在一次只处理一个文件.我不需要这些文件包含的所有数据,我希望我可以使用编程来最小化我的文件.

现在我的问题是我在编写正确的代码时遇到了一些困难,因此R了解我需要它做什么.

让我先向您展示一些数据,以便了解格式.

M977
R 64266NRE1VEW107 FI0009653869 2EURXHEL 630 1
R 64516SSA0B 80SHB SE0002798108 8SEKXSTO 40 1
R 645730BBREEW750 FR0010734145 8EURXHEL 640 1
R 64655OXS1C 900SWE SE0002800136 8SEKXSTO 40 1
R 64663OXS1P 450SWE SE0002800219 8SEKXSTO 40 1
R 64801SSIEGV LU0362355355 11EURXCSE 160 1
M978
Run Code Online (Sandbox Code Playgroud)

另一段数据:

M732
D 3547742
A 3551497B 200000 67110 02800
D 3550806
D 3547743
A 3551498S 250000 69228 09900
Run Code Online (Sandbox Code Playgroud)

所以你可以看到每一行以一个字母开头.每个字母表示该线的含义.例如,R指订单簿目录消息,M表示最后一秒后的毫秒,H表示股票交易行为消息.总共使用了14种不同的字母.

我已经使用该readLines函数将数据导入R.但是,当我想处理数据时,R似乎需要很长时间才能处理.

现在我想写一些If函数,说明第一个字母是否R从偏移1到4,代码意味着市场分段标识符等,并且让R添加列到这些,所以我可以处理更多的数据结构时尚.

导入此类数据的最佳方式是什么,还可以创建某种形式的结构 - 例如,在数据行中使用唯一ID信息来分析1个库存.

import r large-files

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

R中循环的替代

可能重复:
加速R中的循环操作

我有几个关于循环的问题.我知道R使用矢量化计算可以更快地工作,我想更改下面的代码来利用这一点.在论坛上查看其他一些答案,sapply函数似乎能够替换inside for循环,但我生成一个零向量,所以有一个错误.陶仍然是1000,我认为这是造成问题的原因.

我主要关心的是速度,因为我需要围绕整个算法创建一个循环,并绘制不同的V和n尺寸以进行进一步分析.

谢谢你的帮助

替代循环

tao = 1000
L = (tao - 1)   
n = 10      
V = 5               
I = 10000                       
V_s = matrix(rnorm(I), I, 1)
V_b = matrix(rnorm(I), I, 1)

signal <- matrix(0, L, 1)  

for( j in (n:L)){

    sapply(((j-n+1):j),function (tao) signal[j] = signal[j] + abs(V_s[tao] - V_b[tao]))

    signal[j] = (signal[j] / (n * V) )

} 
Run Code Online (Sandbox Code Playgroud)

原始循环

tao = 1000
L = (tao - 1)   
n = 10      
V = 5               
I = 10000                       
V_s …
Run Code Online (Sandbox Code Playgroud)

for-loop r

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

与不同向量长度的相关性

我之前提出了一个关于这个问题的问题,该问题已迁移到stats.stackexchange

在得到答案之后,我对R中的实现提出了一些问题来解决这个问题,并认为我应该在这里问他们.

这就是我想要制作的内容:

对于每个股票,我有两个单独的列,价格和时间.如果权益X的时间存在但不存在权益Y,那么先前的价格应该被放入向量中,反之亦然.

这是一个if循环解决方案吗?谢谢你的帮助.

如下例所示:

X           Y   
price   time   price   time
10     540     20  540
11     541     21  541
12     542     22  543
13     544     23  544
14     545     24  545

price   time   price   time
10     540     20  540
11     541     21  541
12     542     21  542
12     543     22  543
13     544     23  544
14     545     24  545
Run Code Online (Sandbox Code Playgroud)

expand r

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

标签 统计

r ×3

expand ×1

for-loop ×1

import ×1

large-files ×1