【发布时间】:2016-01-21 17:30:57
【问题描述】:
我在 R 中有一个期货合约值的时间序列,称为 vxdata 长格式。在值从数字变为“NA”的日期,我想创建一个列,将该日期列为该特定合同的到期日期。我尝试了以下公式:
vxdata$expiration = vxdata$Dates[which(vxdata$value==NA & lag(vxdata$value)>0]
我收到以下错误:
'$tmp', "expiration", value = numeric(0)) 中的错误:
替换有0行,数据有452200
关于执行此操作的更好/正确方法的任何建议?
【问题讨论】:
-
试试 vxdata$Dates[which(vxdata$value==NA) & which(lag(vxdata$value)>0)]
-
啊。对 NA 来说,什么都不是“==”。学习使用
is.na
标签: r