我有一个xts对象。因此,按日期排序的公司“流通股”的时间序列。我想将“流通股”的时间序列乘以因子7,以说明股票拆分的原因。
> outstanding_shares_xts <- shares_xts1[,1]
> adjusted <- outstanding_shares_xts*7错误:二元运算符的非数字参数。
ts "oustanding_shares_xts“是一列整数。有谁有主意吗?
发布于 2020-06-21 01:30:27
我的猜测是,它们可能看起来像整数,但实际上不是。
侦察:
[-vs-[[列子设置,因为tibble(a=1:2)[,1]不会生成整数向量(它会生成单列tibble),但tibble(a=1:2)[,1] * 7仍然可以工作。factors,但这是一个不同的错误:data.frame(a=factor(1:2)),1*7 #Ops.factor中的警告(data.frame(a=因子(1:2)),1,7):# '*‘对于因子#1 NA NA没有意义
,
character值。dat <- data.frame(a=as.character(1:2)) dat #a#1 1#2 dat,1*7 #dat中的错误,1*7:二元运算符的非数字参数
尝试将该列转换为整数,如下所示
str(dat) # 'data.frame':2个obs。1个变量:#$ a: chr "1“"2”dat$a <- as.integer(dat$a) str(dat) # 'data.frame':2 obs。共1个变量:#$ a: int 1 2 dat,1*7 #1 7 14
https://stackoverflow.com/questions/62489120
复制相似问题