1

電気メーター (kwh) からのタイム スタンプと整数値 (date_entered、reading) を記録するテーブルを用意します。毎日の使用状況をグラフ化したいと思います...ほとんどの測定値は毎日であり、いくつかは数日離れています-1日のランダムな時間。日ごとに返される前のエントリの差の毎日の平均が必要です。※平均は正確ではありません。

Example Data:
date_entered    reading
2012-06-01 17:02    18522
2012-06-02 14:56    18641
2012-06-03 10:55    18677
2012-06-06 15:16    18702
2012-06-11 13:28    18803
2012-06-13 17:33    18850

Example Output:
Date              Daily Average
2012-06-01 12:00    
2012-06-02 12:00    19
2012-06-03 12:00    130
2012-06-04 12:00    43
2012-06-05 12:00    43
2012-06-06 12:00    43
2012-06-07 12:00    8
2012-06-08 12:00    8
2012-06-09 12:00    8
2012-06-10 12:00    8
2012-06-11 12:00    21
2012-06-12 12:00    21
2012-06-13 12:00    22
4

1 に答える 1

2

自分で行った手順に従って、平均を手動で計算できます。ここにその明示的な説明があります:

次の 2 つの情報を保持する Readings のリストがあります。

  • タイムスタンプ
  • Kw総計

そして、次のような毎日の消費量のリストが必要です。

  • 日にち
  • キロワット消費量

最初のリストを繰り返し処理し、2 番目のリストに入力する必要があります。

リーディングごとに (記録の 2 日目から):

  • 前の日付を持つ Readings の最新のアイテムを取得します。
  • 日付を比較し、日数の差を取得します (>= 1 である必要があります)
  • 最新の読み取り値の翌日から現在の読み取り日までの各日について、Daily Consumption に 1 つのエントリを作成します (同じ日に 2 つの読み取り値があるために既に作成されている場合を除く)。
  • 消費量の違いを取得します。
  • 消費量の差を日数の差で割り、平均を求めます。
  • その平均を、最新の読み取り日の翌日から現在の読み取り日までの各毎日の消費量の Kwh 消費量に割り当てます。

ほら!

同じ日に複数の測定値がある場合でも、同じ日の 2 回目の測定値に到達すると平均が上書きされるため、機能するはずです (1 日あたり 1 つの毎日の消費アイテムのみを作成するようにしてください)。

于 2012-06-12T20:19:48.793 に答える