字符串不是明确的标准格式

时间:2018-02-15 16:06:16

标签: r date

我有日期数据,我想提取月份名称及其年份:

<Route path="/edit/:id" component={EditExpansePage} />

换句话说,我需要将结果按按升序排列,如下所示:

>head(merged.tables$Date)

 2015-07-31
 2013-01-12
 2014-01-03
 2014-12-03
 2013-11-13
 2013-10-27

所以我尝试使用此代码进行首先转换,如上面的代码所示。

January_2013
 October_2013
 November_2013
 January_2014
 December_2014
 July_2015

但它告诉我这个错误:

  

charToDate(x)出错:         字符串不是标准的明确格式

我尝试调整此解决方案character string is not in a standard unambiguous format。 但我无法解决它!

感谢您的帮助

2 个答案:

答案 0 :(得分:0)

试试这个(将你的日期传递给角色):

(go-loop
     [[v _] (alts! [out (timeout 1000)])
      i 0
      acc 0]
      (if (and v (not= n i))
        (do
          (>! task-ch (as/progress-tick))
          (recur (alts! [out (timeout 1000)]) (inc i) (+ acc v)))
        (do (close! out)
            (deliver p* (if (= n i) acc nil)))))

如果您像这样构建data.frame,则不会出现该错误:

merged.tables$Date <-paste(months(as.Date(as.character(merged.tables$Date))),year(as.Date(as.character(merged.tables$Date))),sep="_")

我认为问题与您的数据类有关。

排序:

merged.tables<-data.frame(Date=c("2015-07-31","2013-01-12",
"2014-01-03",
"2014-12-03",
"2013-11-13",
"2013-10-27"))

答案 1 :(得分:0)

您可以在原始日期使用order来获得正确的订单 首先,请阅读您的数据示例。

Date <- scan(what = character(), text = '
2015-07-31
 2013-01-12
 2014-01-03
 2014-12-03
 2013-11-13
 2013-10-27')
Date <- as.Date(Date)

现在,重新格式化并订购它们。

inx <- order(Date)
newDate <- format(Date, format = "%B_%Y")[inx]
newDate
#[1] "January_2013"  "October_2013"  "November_2013" "January_2014" 
#[5] "December_2014" "July_2015"

请注意,这假定日期属于班级Date