簡體   English   中英

使用R將因子轉換為日期

[英]Using R to convert factor to date

我知道這個問題已被反復詢問,道歉,但我只是看不到錯誤...試圖將一個因素轉換為如下的日期,無論我嘗試過什么,我仍然得到N / A.

> class(cd$StartDate)
[1] "factor"
> head(cd)
  StartDate      Phase Cancer
1   Dec-89   Phase  2  breast
2   Jul-89   Phase  2  breast
3   Sep-92   Phase  1  breast

> cd$dates <- as.Date(cd$StartDate, format = "%b-%y)

> head(cd)
  StartDate      Phase Cancer dates
1   Dec-89   Phase  2  breast  <NA>
2   Jul-89   Phase  2  breast  <NA>
3   Sep-92   Phase  1  breast  <NA>

我認為您需要為轉換工作提供一天的值:

cd$dates <- as.Date(
  paste0(as.character(cd$StartDate), "-01"), 
  format = "%b-%y-%d")
##
R> str(cd)
#'data.frame':  3 obs. of  4 variables:
#$ StartDate: Factor w/ 3 levels "Dec-89","Jul-89",..: 1 2 3
#$ Phase    : chr  "Phase_2" "Phase_2" "Phase_1"
#$ Cancer   : chr  "breast" "breast" "breast"
#$ dates    : Date, format: "1989-12-01" "1989-07-01" "1992-09-01"

數據:

cd <- read.table(
  text = "  StartDate      Phase Cancer
1   Dec-89   Phase_2  breast
2   Jul-89   Phase_2  breast
3   Sep-92   Phase_1  breast",
  header = TRUE,
  stringsAsFactors = FALSE)
##
cd$StartDate <- as.factor(cd$StartDate)

我也嘗試過:

as.Date(as.character(cd$StartDate),format = "%m/%d/%y")

但低於一個工作

 a<-as.character(cd$StartDate)
 b<-as.Date.character(a, format = "%m/%d/%Y")
 b

大寫字母中的Y形式與眾不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM