._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)
._883<-._883[,6]
._600938<-._600938[,6]
spread<-data.frame(._883,._600938)
> length(._883)
[1] 169
> length(._600938)
[1] 165
两个数组都按日期索引;如果我想在这里使用dplyr
库,我想找出._600938
中丢失的数据,然后删除整行,包括._883
(这样我就可以使用相同的日期对齐数据),请问我如何才能使用dplyr
做到这一点。非常感谢您的帮助。
大家好,我不使用dplyr
库,而是尝试以下方法:
x<-cbind(._883,._600938)
na.omit(x)
x$spread<-x[,2]-x[,1]
1条答案
按热度按时间qq24tv8q1#
要使用dplyr库查找._600938中缺少的数据并删除包括._883在内的整行,可以使用过滤器()函数仅选择._600938列中缺少值的行,然后使用选择(-1)函数排除._883列,仅保留._600938列。然后可以使用anti_join()函数从扩散中删除缺少数据的行:
或者,可以使用tidyr库中的complete()函数,用默认值(如0或NA)填充缺失的值:
请注意,如果._883或._600938中的日期不同时存在,则complete()函数会向数据框中添加行。如果不想向数据框中添加行,则可以使用dplyr库中的full_join()函数:
希望能有所帮助!