1

R で操作したい一連のテーブルのスクレイピングに成功しました。R は初めてですが、これはそれを理解するための良い方法のようです。

現在、次のようなバー区切りの CSV にデータが保存されています。

FIRST|LAST|9812036311|string-string|1999-07-06 00:00:00|2000-07-06 00:00:00|12345|1999-07-27 00:00:00|2,518.50

私はそれを読むことができます:

j <- read.table('my_data.csv', header = FALSE, sep = "|")

しかし...これらの日付列をRが読み取れる日付に変換するにはどうすればよいですか?

最初にフレームを定義する必要がありますか?

4

3 に答える 3

2

ここでcolclasses推奨されているようにチェックアウトして、R が CSV の各列で期待するデータの種類を理解できるようにします。日付形式を扱うためのlubridateパッケージも見てください。

于 2012-11-26T21:56:55.527 に答える
1

あなたのように日時文字列を変換するには、次のように構造関数を使用することをお勧めします。

> # begin with date-time values stored as character vectors ("strings"):

> w
   [1] "2000-07-06 00:00:00"

> typeof(w)
   [1] "character"

> class(w)
   [1] "character"

> # use structure to convert them
> w = structure(w, class=c("POSIXt, POSIXct"))

> # verify that they are indeed R-recognizable date-time objects:
> w
   [1] "2000-07-06 00:00:00"
   attr(,"class")
   [1] "POSIXt, POSIXct"

w/r/t メカニズム: R 関数はベクトル化されるため、次のように、日付の列を渡して結果を同じ列にバインドできます。

> j$day
    [1] 1353967580 1353967581 1353967583 1353967584 1353967585 1353967586 
    [7] 1353967587 1353967588 1353967589 1353967590

> j$day = structure(day, class=c("POSIXt", "POSIXct"))

> day
   [1] "2012-11-26 14:06:20 PST" "2012-11-26 14:06:21 PST" "2012-11-26 14:06:22 PST"
   [4] "2012-11-26 14:06:23 PST" "2012-11-26 14:06:24 PST" "2012-11-26 14:06:25 PST"
   [7] "2012-11-26 14:06:26 PST" "2012-11-26 14:06:28 PST" "2012-11-26 14:06:29 PST"
   [10] "2012-11-26 14:06:30 PST"
于 2012-11-26T22:07:13.887 に答える
0

必要だったことがas.Dateわかりました-サニティチェックとして、変更日を含む新しい列を作成しました。

j$better.date <- as.Date(j$original.date, format="%Y-%d-%m")
于 2013-01-16T16:23:54.003 に答える