问题标签 [gaps-in-data]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 如何在大 mysql 表中找到时间数据的间隙
我试图找到时间数据中的差距,但问题是我的数据不是固定间隔序列,所以我认为我不能使用这个解决方案:如何在 mysql 中找到序列编号的差距?
我的时间数据以毫秒为单位(bigint),通常每秒至少有一个值,所以我在想这样的事情:
但是该查询需要永远进行(我的表有超过 1 亿条记录)。
有没有更快的解决方案?// MySQL 版本 5.7.14
我还发现了这个:MySQL / MariaDB:如何找到基于时间的数据的差距?但是正在使用多个子选择,我认为这会更慢
MCRE:
sql - 按包含/排除/空日期范围限制记录
首先,描述我的任务。我需要确定在过去 2 年内下订单的客户。但是,我需要这些记录的一个子集。
- 需要在 12-24 个月前下达 1 个或多个订单。
- 1-12 个月前没有下订单的差距。
- 在过去一个月内下达了 1 个或多个新订单。
听起来很简单,但是我花了太多时间来隔离约束而没有收到所需的输出。
这是我当前的代码尝试:
样本数据:(我看不到添加表格的方法,所以这里......)
理想情况下,我当前代码的结果集应该显示:
我并没有像现在这样与我的代码结婚。我希望有人能引导我找到更好的方法来完成这项任务。
谢谢!
-道格伯特
python - 根据预期间隔获取数据集中缺失时间戳的计数
我有一个数据集,它由压力的时间戳读数组成,应该每 15 分钟记录一次并返回一次。下面的示例数据显示数据集中存在大于 15 分钟的间隙
我一直在尝试找到一种方法来添加计数列,该列计算接收到的读数之间缺少多少读数,例如 15 分钟间隔 = 0(错过读数),半小时间隔 = 1(错过读数)和 45 分钟的间隔 = 2,等等。
在这个阶段,我没有任何想要展示的代码,因为我还有很长的路要走,虽然我一直在努力解决这篇文章,但仍然没有成功。如何在 Pandas 的时间序列中检测间隙和连续周期
任何指针将不胜感激
r - 查找数据间隙并拆分更多轨道
我有一些动物的跟踪数据,我想知道每个 ID 的卫星传输间隔是否超过 1 天。
而且,如果有的话,我需要将轨道分成 2 个或更多相同 ID 的子轨道。所以,有些人会有不止一次的爆发。
我的数据是这样的(dput):
sql - 如何在oracle中将数字丢失100s
我需要在 oracle 的表格列中找到缺失的数字,其中缺失的数字必须取 100s ,这意味着如果在 2000 和 2099 之间找到至少 1 个数字,则必须返回 2000 和 2099 之间的所有缺失数字,所以上。
这是一个说明我需要什么的例子:
结果必须是 2000,2003,2005 到 2099,2100 到 2104,2106 到 2199,3000 到 3005,3007 到 3099,9400 到 9409,9411 到 9499。
我从这个查询开始,但它显然没有返回我需要的内容:
r - 如何在不同长度的时间序列中创建随机间隙?
对于我的硕士论文,我必须在现有数据集上检查不同的填空方法。因此我必须添加不同长度的人工间隙(1h,5h ..),这样我就可以用不同的方法填充它们。是否有一个简单的功能可以做到这一点?
这是数据框的示例:
sql - SQL Server 填补时间序列中的空白
我在处理 SQL 请求时遇到问题。
我有两张表,一张代表日期向量,另一张代表不同证券价格的时间序列:
日期:
日期 ID | 日期 |
---|---|
1 | 2021-01-01 |
2 | 2021-01-02 |
3 | 2021-01-03 |
时间系列:
安全 ID | 日期 ID | 价值 |
---|---|---|
1 | 1 | 0.25 |
1 | 3 | 0.32 |
2 | 1 | 0.41 |
2 | 2 | 0.67 |
时间序列可能存在间隙,例如在上表中,SecurityId=1 在 DateId=2 处没有任何行,而 SecurityId=2 在 DateId=3 处没有任何行。
我需要建立一个请求,用时间序列中的最后一个值填补空白。导致所有证券和所有日期的值如下:
安全 ID | 日期 ID | 价值 |
---|---|---|
1 | 1 | 0.25 |
1 | 2 | 0.25 |
1 | 3 | 0.32 |
2 | 1 | 0.41 |
2 | 2 | 0.67 |
2 | 3 | 0.67 |
我试图开始将所有日期与正确的连接匹配
不幸的是,这不起作用,因为始终存在与 DateId 上的相等性匹配的安全性,因此我没有得到没有值的 TimeSeries 行。
我正在研究 SQL Server 标准 2019,我的目标是基于单个查询的解决方案(避免使用临时表或游标的过程)。
mysql - 向每个位置添加缺失的日期 - MySQL 5.7
所以我的 SQL 输出是:
但是我需要每天都有一个条目,即使最后一个字段是一个卷(有时那天在那个位置什么都没有发生)。
我什么都试过了,但我的 SQL 5.7 知识很薄弱。我可以生成一个日历表,但它不能填补每个站点的空白(您可以看到 Leeds 缺了一天,但还有其他站点也缺了日期)。
到目前为止我使用的代码是:
我该怎么做呢?
mysql - 如何查找mysql表记录之间的时间间隔和间隔长度?
我的表如下所示:
ID | 时间 |
---|---|
1 | 2021-07-17 17:44:26 |
2 | 2021-07-17 17:44:26 |
3 | 2021-07-17 17:44:26 |
4 | 2021-07-17 17:44:31 |
5 | 2021-07-17 17:44:31 |
6 | 2021-07-17 17:44:31 |
7 | 2021-07-17 17:44:36 |
8 | 2021-07-17 17:44:36 |
9 | 2021-07-17 17:44:36 |
10 | 2021-07-17 17:44:41 |
11 | 2021-07-17 17:44:41 |
12 | 2021-07-17 17:44:41 |
13 | 2021-07-17 17:44:51 |
14 | 2021-07-17 17:44:51 |
15 | 2021-07-17 17:44:51 |
16 | 2021-07-17 17:44:56 |
17 | 2021-07-17 17:44:56 |
18 | 2021-07-17 17:44:56 |
19 | 2021-07-17 17:45:02 |
20 | 2021-07-17 17:45:02 |
21 | 2021-07-17 17:45:02 |
我有 MySQL 8.0.21
总是接下来的 3 行有相同的时间,然后 beetwen 通常是 5 秒的时间间隔,如何找到所有超过 8 秒的间隔并计算间隔时间以获得类似的结果:
gap_id | gap_time_start | 间隙长度 |
---|---|---|
1 | 2021-07-17 17:44:41 | 10 |
sql - 用下一个非空值填充空白
从几天前开始,我一直在努力寻找解决方案。我有以下数据集。
所需的输出包括用下一个非空值替换order_of_occurrence列中的空值。像这样:
我尝试使用子查询从出现顺序列中检索非空值,但我得到的返回值不止一个。如下所示:
谢谢!