0
私はこの質問に似た問題がありますR how can I calculate difference between rows in a data frame;私はこのコードRでは、列がPOSIXltの場合、データフレームの行をどのようにして比較できますか?
df <- data.frame(timestamp=c("2015-02-02 09:53:44","2015-02-02 09:54:53","2015-02-02 09:55:52"),cnt=c(1,2,3))
df$timestamp <- strptime(df$timestamp, "%Y-%m-%d %H:%M:%S")
apply(df , 2 , diff)
でこのソリューションhttps://stackoverflow.com/a/16212173/15485を適用しようが、私はこのエラーを取得:
Error in r[i1] - r[-length(r):-(length(r) - lag + 1L)] :
non-numeric argument to binary operator
私は(タイプPOSIXlt
である)列timestamp
を削除した場合、それが正常に動作します。
しかし... diff(df$timestamp)
がうまく機能している:
Time differences in secs
[1] 69 59
だから、私は何をしないのですか?
出力として必要ですか? 'c(NA、diff(df $ timestamp))' –
またはこれ? 'サプリー(df、diff)'? – Sotos
@RonakShah 'c(NA、diff(df $ timestamp))'は大丈夫です –