4

Microsoft Access (.accdb) から R にテーブルをインポートしようとしています。

私が使用するコードは次のとおりです。

library(RODBC)

testdb <- file.path("modelEAU Database V.2.accdb")

channel <- odbcConnectAccess2007(testdb)

WQ_data <- sqlFetch(channel, "WaterQuality")

動作しているように見えますが、日付と時刻のデータのインポートに問題があります。Access ファイルには 2 つの列があり、1 つは日付フィールド (dd/mm/yyyy) で、もう 1 つは時間フィールド (hh:mm:ss) で、R にインポートすると、日付列に yyyy- の日付が表示されます。 mm-dd 形式で、time 列への形式は 1899-12-30 hh:mm:ss です。また、R はこれらの形式を変数として認識できず、それらを扱うことができません。

また、mdb.get 関数を試してみましたが、うまくいきませんでした。

日付と時刻の形式を定義して Access から R にデータをインポートする方法を知っている人はいますか? Accessファイルをテキストファイルとしてインポートする方法はありますか?

注: Office 2010 と R バージョン 2.14.1 を使用しています。

ありがとうございます。

4

1 に答える 1

1

strデータ フレームで実行した結果を見てください。これにより、データが実際にどのように保存されているかがわかります。通常、日付と時刻は元の日付からの数値として格納されます (Access は 1899 年 12 月 30 日を使用します。これは、MS が 1900 年をうるう年と見なしたためです)。起点からの日数として保存される場合もあれば、起点からの秒数 (またはミリ秒) で表される場合もあります。

データがどのように送信されたか (アクセスと odbc が最初に文字列に変換されたか、または送信された日または秒か) を確認する必要があります。そうすれば、R でこれらを操作する方法 (場合によっては変換) についてより良い感触が得られます。

R ニュース(R ジャーナルの前身)の 2004 年 6 月版に、 Rで日付と時刻を処理する一般的な方法を詳しく説明した記事があり、非常に役立つ可能性があります。

DateTimes の 1 つの列、数値を含む 2 つの列、文字を含む 2 つの列など、最終的に何を作成するかを決定する必要があります。

于 2012-09-13T16:09:04.400 に答える