私はRに少し問題があり、私のスキルはどういうわけか限られています. 前の行に基づくデータ フレームで 2 つの計算を実行したいと考えています。最初のものはカウント変数です。さらに、現在の行と前の行の差を計算したいと考えています。
私の問題を明確にする最も簡単な方法は、小さな例だと思います:
次の表を想像してみてください。この表は 2 つの列のみで構成されています。user
は顧客番号でtime
あり、特定のユーザーのトランザクションの時間です。
次に、サンプル テーブルで指定されているように、2 つの新しい列を作成します。
単純にユーザーのトランザクションをカウントするカウンター変数
count
は、実際のユーザーのトランザクションの実際の数を示します。diff (time [s])
現在のトランザクションと前のトランザクションの間の時間差 [秒] である変数。したがって、時間 [i] - 時間 [i-1] のようになりますが、新しいユーザーごとに計算をゼロからやり直す必要があります。明らかに、各ユーザーの最初のトランザクションの時間差は計算できません。
この問題をループで解決しようとしましたが、テーブルが非常に大きく、完全なデータ セットの計算を終了したくありませんでした。
user time count diff(time[s])
A 10:00:00 1
A 10:30:00 2 1.800
A 12:00:00 3 5.400
A 13:00:00 4 3.600
B 14:00:00 1
C 15:00:00 1
C 16:00:00 2 3.600
C 17:00:00 3 3.600