2014-01-28 42 views
1

我有一個數據如下,我想使用strptime,因爲我曾經這樣做,但它不起作用。R,strptime,No format =「%m-%d-%Y」?

> ic.df$timeonly 
[1] "‎01-28-2014" "‎01-28-2014" "‎01-28-2014" 


strptime(ic.df$timeonly,format="%m-%d-%Y") 
[1] NA 

(嗯..)

strptime("01-28-2014",format="%m-%d-%Y") 
[1] NA 

(什麼..?) 所以我換了年,月,日的位置和工作原理。

strptime("2014-01-28",format="%Y-%m-%d") 
[1] "2014-01-28" 

任何人能解釋這是怎麼回事或我怎麼能「M-d-Y」型轉換爲日期對象?

+0

在python3' strptime(「2014-01-28」,format =「%Y-%m-%d」)''因爲你給了'strptime'一個kwarg''引發了'TypeError'。嘗試刪除'format =',並提供兩個位置參數。 –

回答

0

對我來說它的工作原理:

strptime("01-28-2014", "%m-%d-%Y") 

問候

JDaniel

0

當您粘貼"01-28-2014"有一個特殊字符(隱藏) 「01」 引起NA錯誤,因爲它之前試圖在該字符串上執行特殊字符的轉換。

它修改爲strptime("2014-01-28",format="%Y-%m-%d")時會起作用,因爲參數中的字符不包含原始特殊字符。您可以將原始問題中的代碼複製並粘貼到代碼編輯器或RStudio的控制檯來驗證。

作爲一個建議,以"01-28-2014"轉換成R中一個日期的對象,則可以使用as.Date功能,其經由strptime處理的處理引擎蓋下無論如何:

  • as.Date("01-28-2014",format="%m-%d-%Y")
相關問題