Lubridat'ta guess_formats işlevinin nasıl kullanıldığını anlama konusunda sorun yaşıyorum. Bazı bilinmeyen set/sıra formatlarında bir tarihler vektörüne sahibim. Onları bir Tarih nesnesine dönüştürmek isterim (veya en azından olabildiğince fazla dönüştürürüm).guess_formats + R + lubridate
library(lubridate)
sampleDates <- c("4/6/2004","4/6/2004","4/6/2004","4/7/2004",
"4/6/2004","4/7/2004","2014-06-28","2014-06-30","2014-07-12",
"2014-07-29","2014-07-29","2014-08-12")
formats <- guess_formats(sampleDates, c("Ymd", "mdY"))
dates <- as.Date(sampleDates, format=formats)
Bu, tüm NA adlı verir: Aşağıdaki kod denedim budur.
Açıkçası bu sadece kısa bir örnektir. Gerçek durumda, çeşitli biçimlerin dağınık olduğu yeri bilmezdim ve% 100 /% d /% Y ve% Y-% m-% d olduğundan emin olmazdım. Birisi, ya A.'yi bu örnekte nasıl kullanacağımı tahmin edebilir miydi? Ya da B., burada, çok fazla regex olmaksızın, lubridat/base R'de kullanmak için daha uygun bir şey var. Teşekkürler!
Düzenleme: Ayrıca parse_date_time çalıştım. Ne anlamıyorum şu bu örnek için çalışmalar geçerli:
parse_date_time(sampleDates,
orders = c("Ymd", "mdY"),
locale = "eng")
Ama bu değil: Verilerin Benim asıl setinde
parse_date_time(sampleDates,
orders = c("mdY", "Ydm"),
locale = "eng")
, ben biçimlendirme sırasını bilmez, Bu işlev için önemli gibi görünüyor.
Çift Düzenleme: Dur, tamam, görüyorum, ilk parse_date_time örneğinde Ymd ve ikinci saniyede Ydm var.