2017-07-06 7 views
0

に数値の数字を変換することはできません、私が何をしたいデータの構造は、私がここで時間

enter image description here

POSIXctTimeのフォームを変更することです。

ここに私が試したことがあります。

a <- as.POSIXct(power_consumption$Time, "%H:%M:%S") 
Error in as.POSIXlt.character(as.character(x), ...) : 
    字符串的格式不够标准明确(The format of the string is not standard enough) 

a <- as.POSIXlt(power_consumption$Time, "%H:%M:%S") 
Error in as.POSIXlt.character(as.character(x), ...) : 
    字符串的格式不够标准明确(The format of the string is not standard enough) 

a <- strptime(power_consumption$Time, "%H:%M:%S") 
head(a) 
[1] NA      "2017-07-07 17:24:00 CST" "2017-07-07 17:25:00 CST" "2017-07-07 17:26:00 CST" "2017-07-07 17:27:00 CST" 
[6] "2017-07-07 17:28:00 CST" 

私はTimeのstructionは時間だけを持っているため、結果は、右ではないと思います。

Time%H:%M:%Sに変換するにはどうすればよいですか?ありがとう

+2

再現可能な例を示してください(データの画像では不十分です)。 –

+1

['anytime'パッケージ](https://CRAN.R-project.org/package=anytime)を試してみてください。 – Gregor

+2

私は時間だけを使う理由は考えていません。POSIXctには、 'dt < - as.POSIXct(paste(power_consumption $ Date、power_consumption $ Time)、"%d /%m /%Y% H:%M:%S ")' – HubertL

答えて

1

定義では、POSIXの時刻形式に日付が関連付けられている必要があります。日付が重要でない場合は、そのまま処理を進めることができ、すべてを任意の日付に設定する気にする場合はoriginの日付を指定します。

@ HubertLのアドバイスに従って、最も論理的なオプションのように見える完全なPOSIXオブジェクトを構築できます。

また、chron::times()を使用すると、すべてをHH:MM:SSオブジェクトに格納することができます。またありますhms::as.hms()

日付と時刻を分けて保存する必要がある特別な理由がない限り、完全なPOSIX日付/時刻オブジェクトを作成してください。

また、デフォルトでPOSIXct/ltに日付(この場合は今日の日付)を指定します。これを指定しないと、2017-07-07という名前が付けられます。

0

@Ryanソースからデータフレームをリロードし、各列を正しいデータ型に設定する必要があります。 power_consumptionのすべては、日付と時刻を除いて2倍にする必要があります。すべてのデータが要因として表されるため、深刻な処理は実行できません。

+0

アドバイスをいただき、ありがとうございます。 – Ryan

関連する問題