0

この問題のために誰かの頭脳を借りることはできますか? データとそれに関連するタイムスタンプを取得しました。それらを 5 分の頻度でグループ化することに興味がありますが、00:00 形式でしかグループ化を開始できません。つまり、13:23:27 (時間) は 13:25:00 のデータでグループ化する必要があり、13:30:00、13:35:00 などになります。

この丸めをどのように区別できるか知っていますか? 現時点では、5 分ごとにグループ化できますが、13:18:47 の可能性がある最初のタイムスタンプから開始されるため、次のタイムスタンプは 13:24:00 であり、私の定義では間違っています。 13:20:00

それが理にかなっていることを願っています...

4

3 に答える 3

2

秒に変換し、300 で割り、整数部分をグループ化として使用します。

于 2013-04-03T17:52:55.807 に答える
0

時間を 300 秒単位で四捨五入してみてください。整数を丸める組み込み関数を使用できます。このアルゴリズムを試してみることもできます:

    function round(int timestamp){
        int N = timestamp;                  //The time in time stamp
        int RN;                 //The rounded off time stamp -- wch is our answer
        int n = 300;            //5 min interval in seconds
        int r = N%n;            //The remainder
        int x=N/n;              //the whole number we get after dividing

        if(r/n < 0.5){
            RN = x * n;
        }
        else{
            RN = (x * n)+5;
        }

        return RN;
    }

うまくいくことを願っています。

于 2013-04-03T22:43:02.763 に答える