2017-03-29 10 views
0

データ入力はd/m/y時間の形式で行われます。例:「3/27/2017 1:20:15 AM」と私はd/m/yに3/27/2017を表示させたいだけです。日付形式をd/m/y時間からd/m/yに変換する

私はこれを達成するためのさまざまなテクニックを見てきましたが、3つの異なるタイプを試しましたが、新しい出力としてNAを受け取って、後で "エラーcharToDate(x): 文字列が標準明瞭なフォーマット " エラーです。ここで

は私のサンプルコードです:あなたは= %m/%d/%Y代わりの%d/%m/%Yをフォーマットしたいよう

df <- data.frame(Date = "3/27/2017 1:20:15 AM") 

df$Date <- as.POSIXct(as.character(df$Date), format = "%d/%m/%Y") 

df$Date <- as.Date(df$Date, "%d/%m/%Y") 

df$Date <- format(as.Date(df$Date), "%d/%m/%Y") 

答えて

0

が見えます。

特殊な日付形式でもそれ以降の時刻に問題が残っている場合は、最初にstrsplit()を使用して空白文字列を分割し、最初の項目を取得して日付のみを取得できます。

date <- "3/27/2017 1:20:15 AM" 
date <- strsplit(date," ") 
date <- unlist(date)[1] 
date <- as.POSIXct(date,format="%m/%d/%Y") 
0

完全な書式文字列を指定して、日付時刻として識別する必要があります。 あなたの場合は次のようになります:

as.Date("3/27/2017 1:20:15 AM", format = "%m/%d/%Y %I:%M:%S %p") 
関連する問題