残念ながら、2012年1月12日には42705の数値形式を使用して日付時刻を記録したcsvで作業しています。Lubridateを使ってExcelの日付形式を適切な日付に変換する方法
私は、Lubridateまたは他のパッケージを使用してRで正しいフォーマットに変換したいと考えています。それを処理する関数はありますか?
残念ながら、2012年1月12日には42705の数値形式を使用して日付時刻を記録したcsvで作業しています。Lubridateを使ってExcelの日付形式を適切な日付に変換する方法
私は、Lubridateまたは他のパッケージを使用してRで正しいフォーマットに変換したいと考えています。それを処理する関数はありますか?
これにはlubridate
を使用する必要はありません。as.Date
は、このタイプの変換をうまく処理します。トリックは、あなたの列の型を保持したい場合は、あなたがreadxl
パッケージからread_excel
機能を使用して試すことができます
as.Date(42705, origin = "1899-12-30")
# [1] "2016-12-01"
1899、Excelで12月30日で、原点を、提供しなければならないということです。これにより、数値書式が保存されたXLSまたはXLSXファイルを読み込むことができます。ここで
ありがとうございました。私はRにはまだまだ新しく、治療を受けました。 – elksie5000
大歓迎です。私は原点がやや離れていることに気がついたので、今私の回答を編集しています。あなたのプロジェクトでこのコードを使用する前に私に分かります:-) –
実際には01/12/2016をExcelに入力して数値に変換しました。私が得た値は42705ではなく、42381でした。 'as.Date'関数で42381を使うと1/20/2016に戻ります。番号をExcelから正しくコピーしてもよろしいですか? –
は、管理人とtibbleパッケージを使用してそれを行うための別の方法です:
install.packages("janitor")
install.packages("tibble")
library(tibble)
library(janitor)
excel_numeric_to_date(as.numeric(as.character(YourDate), date_system = "modern")
[この](http://stackoverflow.com/questions/19172632/converting-excel-datetime-serial-number-to -r-datetime)があなたを設定するかもしれません。 – count
このような早急な返信をありがとうございます。 – elksie5000