全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
9093 1
2012-06-28
求助啊,R运行最后出错了,提示下标出界,高手帮忙看下啊(关于高频数据的)

X=read.table("www.txt", header=TRUE)
m=ncol(X)
n=nrow(X)

Ind.all=X$Day.N
n.all=length(Ind.all)

Day.Ind=Ind.all[1]

for(j in 2:n.all)
   {if(Ind.all[j]>Ind.all[j-1]){Day.Ind=c(Day.Ind,Ind.all[j])}}
nd=length(Day.Ind)

for(j in 1:nd)
{
Day.N=X$Day.N
Ind.Minute=X$Minute.1[Day.N==Day.Ind[j]]
Price=X$Price[Day.N==Day.Ind[j]]
Volume=X$Volume[Day.N==Day.Ind[j]]
n=length(Ind.Minute)
Minute.Ind=Ind.Minute[1]


for(i in 2:(n-1))
{if
(Ind.Minute[i]>Ind.Minute[i-1])
{Minute.Ind=c(Minute.Ind,Ind.Minute[i])}}

HFj=matrix(0, 4, 511)
m=length(Minute.Ind)





for(i in 1:m)
{
Pricei=Price[Ind.Minute==Minute.Ind[i]]
ni=length(Pricei)
Volumei=Volume[Ind.Minute==Minute.Ind[i]]




HFj[1, Minute.Ind[i]+1]=Pricei[ni]
HFj[2, Minute.Ind[i]+1]=sum(Pricei*Volumei)/sum(Volumei)
HFj[3, Minute.Ind[i]+1]=ni
HFj[4, Minute.Ind[i]+1]=sum(Volumei)


if(i<m && Minute.Ind[i+1]-Minute.Ind[i]>1)
{k=Minute.Ind[i+1]-Minute.Ind[i]-1
for(l in 1:k)
{
HFj[1, Minute.Ind[i]+1+l]=Pricei[ni]
HFj[2, Minute.Ind[i]+1+l]=HFj[2, Minute.Ind[i]+1]
}
}
}
###### i=1
z0=Minute.Ind[1]
if(z0>0)
{  HFj[1, 1:z0]=Price[1]
   HFj[2, 1:z0]=HFj[2, z0+1]
}
######

###### i=m
zm=Minute.Ind[m]
if(zm<510)
{
    HFj[1, (zm+2):511]=HFj[1, zm+1]
    HFj[2, (zm+2):511]=HFj[2, zm+1]
}
######

if(j==1)
{HF.ALL=HFj}
if(j>1)
{HF.ALL=cbind(HF.ALL,HFj)}
} ## End of Day ##
##HF.ALL[2,]
Output=t(HF.ALL)

哪有问题啊 ??

二维码

扫码加我 拉你入群

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

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

全部回复
2014-12-16 15:48:15
仔细检查一下返回的结果是不是细节上出了问题,比如结果默认排了序或者默认没排序这类。


如果一行一行在R console里面跑,还会出错么?
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群