楼主: ChloeYye
6898 7

[问答] R语言 提取时间序列数据 [推广有奖]

  • 0关注
  • 1粉丝

等待验证会员

大专生

51%

还不是VIP/贵宾

-

威望
0
论坛币
797 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
388 点
帖子
32
精华
0
在线时间
45 小时
注册时间
2016-12-13
最后登录
2021-6-29

楼主
ChloeYye 发表于 2018-10-25 08:50:10 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
现在有2005-2010年每天,每个时间段的股票成交量数据,想提取同一时间段不同天的数据进行分析预测,抽取函数和循环函数该如何写呢?求助!
例如:提取出2005-2010年内,每一天9:35这一时间段的成交量数据。
求助,小白真的不会,好难
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:股票成交量 循环函数 进行分析 分析预测 时间段

沙发
铁锷未残 学生认证  发表于 2018-10-25 13:13:51
提供测试数据并详细说明筛选的要求。
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

藤椅
ChloeYye 发表于 2018-10-25 21:00:00
铁锷未残 发表于 2018-10-25 13:13
提供测试数据并详细说明筛选的要求。
你好,我现在提取到了每个时间段的数据。问题变成了,把数据递归存入数据框,形成5个数据框,数据框中的列是每个时间段的数据。第一个数据框每一列的数据是每个时间段第一个数据,第二个数据框列数据是每个时间段第二个数据,类推下去。
我可能说的不太明白,这是我目前做的。###########定义抽取函数
chouqu<-function(i)
  return(subset(szzs1,szzs1$xh%%48==i))
###########创建每个时间段的数
for (i in 1:48){
  assign(paste("gu", i, sep = ""), chouqu(i%%48))
}
###########以X9.35时间段为例建立svm模型
###########计算第一个时间段的数据
cjl1<-gu1[1:721,2]
cjl2<-gu1[2:722,2]
cjl3<-gu1[3:723,2]
cjl4<-gu1[4:724,2]
cjl5<-gu1[5:725,2]
cjl6<-gu1[6:726,2]
cjl7<-gu1[7:727,2]
gupiao<-cbind(cjl1,cjl2,cjl3,cjl4,cjl5,cjl6,cjl7)
gupiao<-as.data.frame(gupiao)



我在做SVR股票回归,需要多输入多输出,我目前只完成了多输入,单输出

板凳
铁锷未残 学生认证  发表于 2018-10-25 22:42:35
ChloeYye 发表于 2018-10-25 21:00
你好,我现在提取到了每个时间段的数据。问题变成了,把数据递归存入数据框,形成5个数据框,数据框中的列 ...
请提供csv格式或excel格式的数据

报纸
ChloeYye 发表于 2018-10-25 23:13:33
铁锷未残 发表于 2018-10-25 22:42
请提供csv格式或excel格式的数据
你好,这个是数据。

szzs.xlsx

1.06 MB

地板
铁锷未残 学生认证  发表于 2018-10-25 23:16:04
ChloeYye 发表于 2018-10-25 23:13
你好,这个是数据。
请再清楚地说明一下你筛选数据的规则,或者也可以举一个例子。

7
ChloeYye 发表于 2018-10-25 23:31:46
铁锷未残 发表于 2018-10-25 23:16
请再清楚地说明一下你筛选数据的规则,或者也可以举一个例子。
你好,我需要预测股票分时段的成交量。筛选规则就是首先提取同一时间段不同天数的成交量。5分钟一提取。然后对48个时间段的数据分成5个数据框,每个数据框内的列数据是每个时间段的数据。比如,第一个数据框列向量分别是48个时间段从第一天开始的数据。第二个数据框列向量是48个时间段从第二天开始的数据,依次递推。
数据总共分成了727个个案,第一个数据库从1:723,第二个是2:724,保证数据框的行数都是相等的
因为要做支持向量机回归的多输入多输出,等于是一次性预测出48个时间段的量。
我上面发的代码是预测一个时间段的,是单输出。要生成多输出,我不会组织数据了。

8
ChloeYye 发表于 2018-10-26 07:45:08
铁锷未残 发表于 2018-10-25 23:16
请再清楚地说明一下你筛选数据的规则,或者也可以举一个例子。
等于说是把我的这段代码循环48次,然后将数据整合成数据框。数据框总共有48*6列,每48是一个循环,前48列,是从所有所有时间段的第一个数据开始到第722个数据(假设有727个数据),第二个48列是从所有时间段的第二个数据开始到第723开始,保证行数相等,刚好第六个48列是所有时间段的第六个数据开始到第727个结束。
###########计算第一个时间段的数据
cjl1<-gu1[1:721,2]
cjl2<-gu1[2:722,2]
cjl3<-gu1[3:723,2]
cjl4<-gu1[4:724,2]
cjl5<-gu1[5:725,2]
cjl6<-gu1[6:726,2]
cjl7<-gu1[7:727,2]
gupiao<-cbind(cjl1,cjl2,cjl3,cjl4,cjl5,cjl6,cjl7)
gupiao<-as.data.frame(gupiao)

我的这个代码是相对于单输出,一次只预测一个时间段写的。多输出就是按照同样的方法扩充到48个时间段。
下面是我目前的所有代码
###########读取文件
szzs<-read.csv("szzs.csv")
szzs1<-szzs[,c(1,4)]

library('e1071')


###########定义抽取函数
chouqu<-function(i)
  return(subset(szzs1,szzs1$xh%%48==i))

###########创建每个时间段的数

for (i in 1:48){
  nassign(paste("gu", i, sep = ""), chouqu(i%%48))
  
}

###########以X9.35时间段为例建立svm模型
###########计算第一个时间段的数据
cjl1<-gu1[1:721,2]
cjl2<-gu1[2:722,2]
cjl3<-gu1[3:723,2]
cjl4<-gu1[4:724,2]
cjl5<-gu1[5:725,2]
cjl6<-gu1[6:726,2]
cjl7<-gu1[7:727,2]
gupiao<-cbind(cjl1,cjl2,cjl3,cjl4,cjl5,cjl6,cjl7)
gupiao<-as.data.frame(gupiao)

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-11 01:23