大量のデータに対する「MAXIFS」 / 1日あたりの最高気温の検出

大量のデータに対する「MAXIFS」 / 1日あたりの最高気温の検出

3 年間にわたる大量の温度データ (約 340,000 行) があります。1 時間ごとに 12 の異なる地理的位置の温度が記録されており、場所ごとに 1 日あたり 24 回の測定結果があります。

私は、各場所の毎日の最高気温を計算し、それを日付を行、場所を列とする単純なグリッドに配置しようとしており、基本的に「MAXIFS」数式となることを意図した次のような回避策の配列数式を使用しています。

{=MAX(IF(J:J=A6, IF(K:K=B5, I:I)))}

(A6 は日付、B5 は場所、列 J には温度データのすべての日付が含まれ、列 K には場所の ID、列 I には実際の温度測定値が含まれます。)

これは数百行程度では機能するようですが、それ以上になると、「1 つ以上の数式を計算しようとしたときに Excel のリソースが不足しました」というエラーが発生します。

これは計算に非常に多くのリソースを必要とする方法だと認識していますが、別の方法をご存知の方はいらっしゃいますか?

温度データに対して RANK() 式を実行し、その日の各温度の測定値をランク付けし、範囲を動的な参照に基づいて決定することを考えましたが、まだ完全には理解できていません。また、この方法でもリソースが大量に消費され、計算上の問題が発生する可能性が高いと感じています。

答え1

通常、このような問題はピボット テーブルによって簡単に解決できます。

グループ化のために行ヘッダーと列ヘッダーを設定し、データ部分でデータの最大値を取得できます。

関連情報