私はいくつかの時間データを扱っていますが、時差を年と月に変換する際に問題があります。
私のデータは多かれ少なかれこのように見えます。
dfn <- data.frame(
Today = Sys.time(),
DOB = seq(as.POSIXct('2007-03-27 00:00:01'), len= 26, by="3 day"),
Patient = factor(1:26, labels = LETTERS))
DOB
まず、今日のデータ ( )から誕生のデータ ( ) を引きますToday
。
dfn$ageToday <- dfn$Today - dfn$DOB
これにより、 が得られますTime difference in days
。
dfn$ageToday
Time differences in days
[1] 1875.866 1872.866 1869.866 1866.866 1863.866
[6] 1860.866 1857.866 1854.866 1851.866 1848.866
[11] 1845.866 1842.866 1839.866 1836.866 1833.866
[16] 1830.866 1827.866 1824.866 1821.866 1818.866
[21] 1815.866 1812.866 1809.866 1806.866 1803.866
[26] 1800.866
attr(,"tzone")
[1] ""
これが私の質問の最初の部分です。この差を年と月に変換するにはどうすればよいですか (月に丸めます)。(つまり、4.7、4.11 など)
?difftime
man ページとを読みました?format
が、わかりませんでした。
どんな助けでも大歓迎です。
さらに、最終的なオブジェクトを溶かしたいのですが、このコマンドを使用して上記のデータ フレームで Melt を使用しようとすると、
require(plyr)
require(reshape)
mdfn <- melt(dfn, id=c('Patient'))
今まで見たことのない奇妙な警告が表示される
Error in as.POSIXct.default(value) :
do not know how to convert 'value' to class "POSIXct"
2 番目の質問は次のとおりです。変数と一緒にできる時差を作成するにはどうすればよいですか? melt
POSIXct
dfn$ageToday
私は魅力のようにすべての作品なしで溶けたら。
ありがとう、エリック