._883<-quantmod::getSymbols("0883.HK",from="2022-04-21",to="2022-12-22",auto.assign = FALSE)
._600938<-quantmod::getSymbols("600938.SS",from="2022-04-21",to="2022-12-22",auto.assign = FALSE)
x<-cbind(._883[,6],._600938[,6])
x$diff<-x[,2]-x[,1]
na.omit(x)
mean(x[,3],na.rm=TRUE)
x$diff2<-
if (x[,3]<mean(x[,3],na.rm=TRUE)){
print("below average")
} else {
print("above average")
}
我试图比较第三列的值与其平均值,并打印低于或高于平均值相应,但NA返回,介意看看,看看哪里出错了吗?百万感谢。
更新1:
> x$diff2<-
+ ifelse (x[,3]<mean(x[,3],na.rm=TRUE), "below average", "above average")
Warning message:
In merge.xts(..., all = all, fill = fill, suffixes = suffixes) :
NAs introduced by coercion
> na.omit(x)
[,1] [,2] [,3] [,4]
3条答案
按热度按时间4ioopgfo1#
使用
ifelse
(if
else
控件的矢量化形式):bttbmeg02#
我没能弄到你的数据。看看这是不是你需要的。我做了一些假数据。
创建于2022年12月22日,使用reprex v2.0.2
0kjbasz63#
Tidyverse方法