我有大量的温度数据,跨度 3 年,约 340,000 行。它每小时读取一次温度,并且覆盖 12 个不同的地理位置,因此每个位置每天读取 24 次。
我正在尝试计算每个位置每天的最高温度,并将它们放在一个简单的网格中,其中日期为行,位置为列,并且一直在使用一个基本上旨在作为“MAXIFS”公式的变通数组公式,如下所示:
{=MAX(如果(J:J=A6,如果(K:K=B5,I:I)))}
(其中 A6 是日期,B5 是位置,J 列包含温度数据中的所有日期,K 列包含位置 ID,I 列包含实际温度读数。)
这似乎适用于几百行左右,但超过这个数字时,我就会收到“Excel 在尝试计算一个或多个公式时耗尽资源”的错误。
我意识到这是一种非常耗费资源的计算方法,所以有人知道我可以用另一种方法来解决这个问题吗?
我曾想过尝试在温度数据上运行 RANK() 公式,对当天的每个温度读数进行排序,并根据动态参考确定范围,但还没有完全弄清楚,而且我觉得这会耗费大量资源,并且可能会导致计算问题。
答案1
一般来说,这类问题可以通过数据透视表轻松解决。
您可以设置行和列标题进行分组,并在数据部分获取数据的最大值。