【问题标题】:xts - Delete specific rows without transform to other formatxts - 删除特定行而不转换为其他格式
【发布时间】:2018-11-22 21:13:19
【问题描述】:

问题:如何删除 xts 中的特定行,而不需要转换为其他格式。要删除的选定行将基于行号,或 [column.one] 而不是时间戳。

这是我迄今为止测试过的:

将第 4 行第 1 列发送到 NULL

myxts[4,1] <- NULL 

结果:NextMethod(.Generic) 中的错误: 要替换的项目数不是替换长度的倍数

为 NA 添加值,然后使用 [na.omit] 删除所有 NA

xts3[1,1] <- NA # Adds NA

na.omit(xts3)

结果:确实删除了 NA 行,但没有解决删除行的直接方法。


这是我的测试 xts:

##########
# Test xts
##########
dates <- as.POSIXct( # Construct the dates to be used.
  c(
    "2013-07-24 09:01:00", 
    "2013-07-24 09:02:00", 
    "2013-07-24 09:03:00"
  )
)

column.one <- c(1,2,3) # Data in column.one.
data <- data.frame(column.one) # Create a dataframe.
xts3 <- xts(x=data, order.by=dates) # Create xts based on dataframe.

【问题讨论】:

    标签: r xts


    【解决方案1】:

    以下几行产生相等的输出。

    xts3[-2, ]
    
    xts3[index(xts3) != index(xts3[xts3$column.one == 2])]
    
                        column.one
    2013-07-24 09:01:00          1
    2013-07-24 09:03:00          3
    

    但是对于 xts / zoo 时间序列,使用索引会更好、更安全,因为这可以更好地控制您想要/可以使用它们实现的目标。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-21
      • 1970-01-01
      • 2018-06-20
      • 1970-01-01
      • 2022-01-10
      • 2021-07-27
      • 2020-08-05
      • 2021-06-15
      相关资源
      最近更新 更多