-5
假設我有一個包含3列A,B和C的數據集,其中包含大量行的日期。如何創建一個子集,省略C中的日期不在A和B中的日期範圍內的行?基於日期範圍的R子集
假設我有一個包含3列A,B和C的數據集,其中包含大量行的日期。如何創建一個子集,省略C中的日期不在A和B中的日期範圍內的行?基於日期範圍的R子集
你在問像下面這樣的東西嗎?
比方說,你最初的數據幀是DF,這是這樣的:
df
A B C
1 2016-02-16 2016-03-21 2016-01-01
2 2016-07-07 2016-06-17 2016-01-31
3 2016-05-19 2016-09-10 2016-03-01
4 2016-01-14 2016-08-21 2016-04-01
5 2016-09-02 2016-06-15 2016-05-01
6 2016-05-09 2016-07-17 2016-05-31
7 2016-06-13 2016-06-23 2016-07-01
8 2016-09-17 2016-03-11 2016-07-31
9 2016-03-09 2016-05-13 2016-08-30
10 2016-01-20 2016-09-01 2016-09-30
現在,如果你做下面的子集操作,我們將得到以下數據框的子集:
df.sub <- df[apply(df, 1, function(x) (x[3] < min(x[1], x[2])) |
(x[3] > max(x[1], x[2]))),]
df.sub
A B C
1 2016-02-16 2016-03-21 2016-01-01
2 2016-07-07 2016-06-17 2016-01-31
3 2016-05-19 2016-09-10 2016-03-01
5 2016-09-02 2016-06-15 2016-05-01
7 2016-06-13 2016-06-23 2016-07-01
9 2016-03-09 2016-05-13 2016-08-30
10 2016-01-20 2016-09-01 2016-09-30
希望能幫助到你。
嗨Jason,歡迎來到StackOverflow。請查看[this](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example),並嘗試爲我們提供最少的可重現示例。 –
此外,這種操作被稱爲「子集」 - 這應該可以幫助您輕鬆地谷歌答案。如果你找不到任何東西(不太可能),那麼*然後*在這裏提出一個問題(並提供一些數據以及迄今爲止已經嘗試過的內容)。 – jakub
[R - 檢查字符串是否包含特定日期範圍內的日期]的可能重複(http://stackoverflow.com/questions/31716187/r-check-if-string-contains-dates-within-specific-date-range) – Sotos