這是資料:
rawdata <- data.frame(
OIL = c(435L,1386L,3019L,2690L,2516L,1977L,
2016L,1846L,1852L,1608L,1375L,1531L,1309L,1275L,1275L,
1114L),
GAS = c(0L,1923L,3224L,3475L,2382L,1691L,
2706L,2393L,2066L,2194L,1916L,2127L,1723L,1532L,2012L,
1951L),
PROPNUM = as.factor(c("49-005-27619",
"49-005-27619","49-005-27619","49-005-27619",
"49-005-27619","49-005-27619","49-005-27619","49-005-27619",
"49-005-27619","49-005-27619","49-005-27619",
"49-005-27619","49-005-27619","49-005-27619",
"49-005-27619","49-005-27619")),
P_DATE = as.factor(c("9/30/1984",
"10/31/1984","11/30/1984","12/31/1984","1/31/1985",
"2/28/1985","3/31/1985","4/30/1985","5/31/1985",
"6/30/1985","7/31/1985","8/31/1985","9/30/1985",
"10/31/1985","11/30/1985","12/31/1985"))
)
我想按 propnum 分組并獲取最小資料,這是我的代碼:
avg <- rawdata %>%
group_by(PROPNUM) %>%
summarise(initial_date = min(as.Date(P_DATE, format = "%m.%d.%Y")))
但我只得到 NAs。
我該如何解決?
uj5u.com熱心網友回復:
問題是您的日期格式不正確。由于您的日期由/
(例如,12/31/1985
)而不是.
分隔,那么您需要更改分隔符format
(例如as.Date
,format = "%m/%d/%Y"
)。
library(tidyverse)
avg <- rawdata %>%
group_by(PROPNUM) %>%
summarise(initial_date = min(as.Date(P_DATE, format = "%m/%d/%Y"), na.rm = T))
輸出
PROPNUM initial_date
<fct> <date>
1 49-005-27619 1984-09-30
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/496319.html