[英]R-Language For-Loop Simple Vector Arithmetic Not Working for a Time Series
我正在嘗試對GOOG股票進行簡單的移動平均線(SMA)。 像這樣完成后,對於SMA,我會得到奇怪且不連續的紅色線條:
frame()
rm(list=ls())
#Value of securities in GOOG
GOOG=read.csv(file="GOOG.csv", head=TRUE, sep=",")
plot(x=GOOG$Close, type="l", ylab="GOOG Closing Prices",xlab="Time")
SMA=GOOG$Close
#5 Day SMA in RED
for(i in 1:84)
{
segments(x0=i,y0=mean(SMA[i:i+4]),
x1=i+1, y1=mean(SMA[i+1:i+5]),
col="red")
}
但是,當我用(SMA [i] + ... + SMA [i + 4])/ 5代替均值(SMA [i:i + 4])/ 5(與替換均值(SMA [i + 1:i]相同+5])),這些值可以很好地工作,並且SMA圖是應該平滑且連續的。
但是,這兩個值是否相同? 我如何糾正這個問題,同時又保持寫平均值的捷徑?
嘗試:
#5 Day SMA in RED
for(i in 1:84)
{
segments(x0=i,y0=mean(SMA[i:(i+4)]),
x1=i+1, y1=mean(SMA[(i+1):(i+5)]),
col="red")
}
*(加括號)
小心您的索引。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.