2011-02-08 10 views
4

2つの列を含むファイルを読みたいと思います。私は標準read.tableを使用する場合R 001000の値を持つ列を含むファイルを読み込みます。

2 00001 
9 00001 
3 00001 
12 00001 
115 00001 
11 00001 
12 00001 
38 00001 

、私はそのようなもので終わる:それはあるよう

V1 V2 
1 2 1 
2 9 1 
3 3 1 
4 12 1 
5 115 1 
6 11 1 

は、私はこのファイルを読み込んで、2列目を保つことができる方法上の任意のアイデアを持っていますか? ありがとう

答えて

2

私は尋ねた、なぜこれは、ドキュメントと混乱していた;) はそれを見つけることができた:

read.table("file.txt", colClasses=c("character")) 
+3

最初のcolを数値にしたい場合、read.table( "file.txt"、colClasses = c( "numeric"、 "character")) –

2

read.table()のドキュメントを読んで、列の種類を選択する方法について学びます。 2番目の列を文字にします。

2

引数を渡して、read.tableが文字列を値に解析するかどうかを変更したり、それらを生の文字列として保持したりするように見えます。

as.read.tableのデフォルトの動作は、文字変数(論理、数値または複合に変換されない)を要因に変換することです。変数as.isはこの変換を制御します。その値は、論理のベクトル(必要に応じて値がリサイクルされる)か、係数に変換されない列を指定する数字または文字のインデックスのベクトルのいずれかです。

注:数値列を含むすべての変換を抑制するには、colClasses = "character"を設定します。

http://stuff.mit.edu/afs/sipb/project/r-project/arch/i386_rhel3/lib/R/library/base/html/read.table.html

2

一般I'dにディルクの答えを持って行きます。しかし、多少の注意は、あまり一般的でないデータフォーマットを扱う方法を探して、このスレッドを突き抜けた人を助けるかもしれません。 utilsパッケージのread.fwfもご覧ください。古いデータベースのようにセパレータを使わずにデータを保存しているのであれば、本当にうれしいです。

あなたの特別なケースでは、私はおそらくread.tableに行きます。

関連する問題