平素より大変お世話になっております。
R言語で、lubridateによって日付の差を新しく列に追加しています
R
1y<- tibble( 2 ID=c(1:5), 3 event = c("A", "A","B","B","C"), 4 date1 = c(20121220,20101030,20201031,20161231,20150414), 5 date2 = c(20081004,20071231,20091010,20060303,20090505)) 6y 7y$date1<-ymd(y$date1) 8y$date2<-ymd(y$date2)
イベント evenet Aの場合のみ日時の差を求めてそれ以外はNAにしたいと思っています。
R
1y <- y %>% mutate(TIMEdiff=case_when( 2 event=="A"~ difftime(date1, date2, units = "days"), 3 TRUE ~ NA)) 4
エラー: Problem with mutate()
input TIMEdiff
.
x must be a difftime
object, not a logical vector.
ℹ Input TIMEdiff
is case_when(...)
.
で行うと、Errorが出てしまいます。difftimeのobjectと異なるということですが、調べても解決できずに困っています。
どなたかご教示いただけないでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。