在应用分组函数之后,我试图计算一个字段在特定时间内的总和。
我的数据集如下所示:
Date Company Country Sold
01.01.2020 A BE 1
02.01.2020 A BE 0
03.01.2020 A BE 1
03.01.2020 A BE 1
04.01.2020 A BE 1
05.01.2020 B
我试图理解这个问题的解决方案:“给定一个数字序列,找到这些数字的连续子序列的最大和。”我已经引用了下面的解决方案和解释。
我不明白的是,在"maxendinghere = max(maxendinghere + s,0)“行中,为什么maxendinghere会是零?
def max_sum_subsequence(seq):
maxsofar = 0
maxendinghere = 0
for s in seq:
# invariant: maxendinghere and maxsofar are accurate
# are
我在使用这个查询获得正确的结果时遇到了一些困难。我有一个信息为每30秒的数据,我想将时间分成5分钟的块,以缩小数据的大小。我必须取每组样本的一个特征的平均值和其他一个特征的总和。如果您能帮助我了解它不能正常工作的原因,我将不胜感激。
INSERT INTO filee.ex_data
SELECT a.id AS id,
avg(CAST(a.feat1 as smallint)) AS feat1,
sum(CAST(a.feat2 as smallint)) AS feat2,
a.day AS day,
avg(hour(a.date_and_time)*60 + minute(a.da
我有一个我正在处理的数据集,它是一段时间内的建筑和电力使用情况。
在这些建筑上有两个聚合,它们是整个时间跨度内的简单总和,我写了这些。它们最终看起来像这样:
var reducer = reductio();
// How much energy is used in the whole system
reducer.value("energy").sum(function (d) {
return +d.Energy;
});
这些效果很好。
然而,第三个聚合给我带来了一些麻烦。我需要找到所有建筑的总和是最大的这一点。我需要求和的最大值和发生的时间。我写道:
redu
我有一个整数序列(正和负),如下所示:
12,-54,32,1,-2,-4,-8,12,56,-22,-21,4,17,35
我需要找到这个序列的任何子序列(当然还有该子序列的起始索引和结束索引)可能出现的最差结果(较小的值总和)。
有没有办法做到这一点而不是2^n (逐个计算所有可能的序列)?
例如,使用这个简单的序列:
1,2,-3,4,-6,4,-10,3,-2
值的较小和将是子序列:
-6,4,-10 (with start index 4 and end index 6)
假设我有一个表,其中包含时间戳列、时间戳和分组列foo。 例如: CREATE TABLE my_table (
id SERIAL PRIMARY KEY,
foo integer NOT NULL,
timestamp timestamp without time zone NOT NULL
); 我想要做的是获得每组的平均时间差(GROUP BY foo),然后获得这些平均值的平均值。 我能遇到的唯一一件事就是得到所有行的平均值(未分组): SELECT avg(difference)
FROM (
SELECT timestam