如何为时间序列中缺失的数据创建“NA”

2023-12-29

我有几个数据文件,如下所示:

X code year month day pp  
1 4515 1953     6   1  0  
2 4515 1953     6   2  0  
3 4515 1953     6   3  0  
4 4515 1953     6   4  0  
5 4515 1953     6   5  3.5

有时会丢失数据,但我没有 NA,行根本不存在。当数据丢失时我需要创建 NA。我虽然可以通过将其转换为动物园对象来确定何时发生这种情况,并检查严格的规律性(我以前从未使用过动物园),但我使用了以下代码:

z.date<-paste(CET$year, CET$month, CET$day, sep="/")
z <- read.zoo(CET,  order.by= z.date )
reg<-is.regular(z, strict = TRUE)

但答案永远是正确的!

谁能告诉我为什么不起作用?或者更好的是,告诉我一种在数据丢失时创建 NA 的方法(有或没有动物园包)?

thanks


The seq函数有一些有趣的功能,您可以使用它们轻松生成完整的日期序列。例如,以下代码可用于生成从 4 月 25 日开始的日期序列:

Edit:此功能记录在?seq.Date

start = as.Date("2011/04/25")
full <- seq(start, by='1 day', length=15)
full

 [1] "2011-04-25" "2011-04-26" "2011-04-27" "2011-04-28" "2011-04-29"
 [6] "2011-04-30" "2011-05-01" "2011-05-02" "2011-05-03" "2011-05-04"
[11] "2011-05-05" "2011-05-06" "2011-05-07" "2011-05-08" "2011-05-09"

现在使用相同的原理通过每两天生成序列来生成一些“缺失”行的数据:

partial <- data.frame(
    date=seq(start, by='2 day', length=6),
    value=1:6
)
partial

        date value
1 2011-04-25     1
2 2011-04-27     2
3 2011-04-29     3
4 2011-05-01     4
5 2011-05-03     5
6 2011-05-05     6

要回答您的问题,可以使用向量下标或match使用 NA 创建数据集的函数:

with(partial, value[match(full, date)])
 [1]  1 NA  2 NA  3 NA  4 NA  5 NA  6 NA NA NA NA

将此结果与原始完整数据相结合:

data.frame(Date=full, value=with(partial, value[match(full, date)]))
         Date value
1  2011-04-25     1
2  2011-04-26    NA
3  2011-04-27     2
4  2011-04-28    NA
5  2011-04-29     3
6  2011-04-30    NA
7  2011-05-01     4
8  2011-05-02    NA
9  2011-05-03     5
10 2011-05-04    NA
11 2011-05-05     6
12 2011-05-06    NA
13 2011-05-07    NA
14 2011-05-08    NA
15 2011-05-09    NA
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为时间序列中缺失的数据创建“NA” 的相关文章

随机推荐

  • 使用循环时如何使 makefile 错误退出?

    如果我有以下 bash 命令 for i in x do ls i done echo OK 执行 ls 然后执行 ls x 失败 缺少 x 并且不打印 OK If for i in x do ls i done echo OK 那么即使
  • Google Cloud Platform:从命令行登录 GCP

    我确信这会很简单 但找不到任何文档或解决方案 我正在尝试使用 gcloud 编写一个脚本来在我的 GCP 实例中执行一些操作 是否可以仅通过命令行使用 gcloud 登录 身份验证 Thanks 这里有几个选择 取决于您到底想做什么 第一个
  • 原则 2 - 从实体外部禁用 PrePersist

    我正在尝试从 Doctrine 2 中的实体外部禁用实体事件 每次我们将新记录插入表中时 都需要运行很少的文件操作 这些操作已在带有 prePersist 注释的方法中实现 但是 我还需要运行一些数据装置并跳过文件操作部分作为测试的一部分
  • 强制轨迹栏值为十倍

    我用 C 在 Winform 项目上添加了一个轨迹栏 mySlider Minimum 0 mySlider Maximum 200 mySlider Value 30 mySlider SmallChange 10 mySlider La
  • Java applet 清单 - 允许所有 Caller-Allowable-Codebase

    从 Java 7u45 开始 如果网页尝试通过 javascript 与小程序交互 并且该页面未在清单的 Caller Allowable Codebase 属性中列出 则小程序将显示警告消息 即使使用受信任的证书进行签名 有关此更改的发行
  • 是否抛出 ConcurrentModificationException 取决于系统

    我正在使用 Iterator 编写一段代码 当我在 Windows 上从 IDE 运行该程序时 在 a 行收到 ConcurrentModificationException LinkedList ll new LinkedList Ite
  • 是否应该在编写代码之前先编写单元测试?

    我知道测试驱动开发的定义原则之一是首先编写单元测试 然后编写代码来通过这些单元测试 但是有必要这样做吗 我发现 在编写之前 我常常不知道自己在测试什么 主要是因为我过去从事的几个项目更多地是从概念验证演变而来 而不是设计出来的 我之前曾尝试
  • UNIQUE 约束失败

    我正在使用 Django 进行 Tango 但无法解决这个练习 我明白了django db utils IntegrityError UNIQUE constraint failed rango category name错误 这是我尝试实
  • IE 浏览器控件 res:// 用法

    我在我的应用程序中使用 IWebBrowser2 控件 并且有各种 html 文件作为资源存储在 exe 中 为了加载这些 我使用 res 协议 问题是 对于某些版本的 IE 页面不再加载 而只是显示 操作已取消 Internet Expl
  • 如何根据另一个矩阵、data.frame 或向量的行重新排序

    test1 lt as matrix c 1 2 3 4 5 row names test1 lt c a d c b e test2 lt as matrix c 6 7 8 9 10 row names test2 lt c e d c
  • 为我的 numpy 数组提供更紧凑的 __repr__ 吗?

    当我显示数组时 默认 repr 方法用于ndarray对象对于我想做的事情来说太大了 a np eye 32 b hello 42 array a b 产生 array array 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1
  • MongoDB 选择 _id 数组中的哪个位置?

    在 mongo db 中可以像 SQL 一样选择集合的文档 SELECT FROM collection WHERE id IN 1 2 3 4 或者如果我有一个 id array我必须一一选择 然后重新组合array object结果 E
  • 从命令行启动进程时如何捕获进程的 PID?

    有没有办法纯粹在 bat 文件中执行此操作 目的是推出iexplore exe 然后在完成时杀死该实例 这是我使用的 echo off rem there is a tab in the file at the end of the lin
  • 注释声明中 String[] 的默认“”是什么?

    什么是default 下面代码中的部分是什么意思 public interface MyAnnotation String names default 是否等于 String names default new String 0 publi
  • 将响应发送给除发件人之外的所有客户端

    要将某些内容发送给所有客户 您可以使用 io sockets emit response data 要接收来自客户的信息 您可以使用 socket on cursor function data 如何将两者结合起来 以便在服务器上从客户端接
  • enctype“application/json”形式可用吗?

    我正在读这个w3c 文档 https www w3 org TR html json forms 关于用 html 表单发布 JSON 数据 并尝试测试它 我的测试表格如下
  • gcc -O0 在 2 的幂矩阵大小(矩阵转置)上优于 -O3

    出于测试目的 我编写了一个简单的方法来计算 nxn 矩阵的转置 void transpose const size t n double A for uint i 0 i lt n i for uint j i 1 j lt n j dou
  • JPEG 伪影检测

    是否有已知的算法可以在不查看图像的情况下以编程方式检测图像退化 我考虑有损重新编码的明显 可见 图像伪影 例如颜色 失真 边缘噪声 块效应等 例如 从原始源编码且 JPEG 质量为 80 的图像就可以 我希望这是正确的提问地点 但如果版主认
  • Lua - 删除非空目录

    我正在尝试删除中的非空目录Lua但没有成功 我尝试了以下方法 os remove path to dir 并得到错误 Directory not empty 39当文件数为39时path to dir 还尝试过 require lfs lf
  • 如何为时间序列中缺失的数据创建“NA”

    我有几个数据文件 如下所示 X code year month day pp 1 4515 1953 6 1 0 2 4515 1953 6 2 0 3 4515 1953 6 3 0 4 4515 1953 6 4 0 5 4515 19