0
問題:(1)確定「O」的第一個實例的日期,然後(2)在給定的「O」(3)之後標識「A」的第一個實例用difftime計算時間差。 (類似於:Time Calculation Between Specific Events)在R中使用帶有difftime的條件語句
問題具體是(2),在給定的「O」之後標識「A」的第一個實例。
數據幀(DF)的列日期和事件看起來像這樣:
"Date" "Event"
"2000-09-08" "A"
"2000-09-11" "N"
"2000-09-12" "O"
"2000-09-13" "O"
"2000-09-14" "O"
"2000-09-15" "O"
"2000-09-18" "N"
"2000-09-19" "N"
"2000-09-20" "N"
"2000-09-21" "N"
"2000-09-22" "N"
"2000-09-25" "A"
"2000-09-26" "A"
"2000-09-27" "A"
"2000-09-28" "A"
"2000-09-29" "A"
"2000-10-02" "A"
"2000-10-03" "A"
例如,第一「O」出現在2000年9月12日和第一「A」,它發生在後2000-09-25。
至於代碼: 此正確地識別「O」
df$Date[df$Event=="O"] [1]
"2000-09-12" #correct
的第一個實例,但是這不正確地標識DF的第一「A」,而不是第一個「O」
df$Date[df$Event=="A"] [1]
"2000-09-12" ##WRONG, correct == "2000-09-25"
後
和這個識別「A」表示的是(每個「O」的##)的實例在第一套
df$Date[df$Event=="A"] [df$Event=="O"]
"2000-10-23" "2000-10-24" "2000-10-25" "2000-10-26" "2001-04-03" "2001-04-04" "2001-06-29"....
我只需要幫助寫這個條件來找到給定的「O」後的第一個A,以便difftime給出正確的天數。
如果您發現將O後切片數據集,然後搜索阿? –
'df $ Date [df $ Event ==「A」&df $ Date> = df $ Date [df $ Event ==「O」] [1]] [1]' – HubertL
HubertL,謝謝!這正是我需要它做的。 – Kirsten