2011-07-07 11 views
1

csvファイルの読み込みを高速化するために、read.csvでcolClassを指定しようとしています。しかし、私は次のような問題が発生します。私はRに次のように実行した場合、その後R内のreadClocksでcolClassesを指定する際の問題

"a","b" 
"x","0" 

は、私が "t.csv" と呼ばれるファイルを持っていると仮定し

data <- read.csv('t.csv' , stringsAsFactors=FALSE, check.names=FALSE , comment.char='', colClasses= c('character','numeric')) 

私はこのエラーが発生しました:

Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, : 
    scan() expected 'a real', got '"0"' 

最初は私の引用で問題だと思っていました。しかしread.csvで引用= "「を」を使用することは助けにはならなかった

答えて

8

あなたの2番目の列は、引用されているようnumericではありません - 。。それテキストになりその

をテキスト、そしてas.numeric(...)を呼び出すようにそれを読みます列。またはファイルを変更する。

3

にさらにダーク、

にあなたは、単にcolClasses引数とファイルが正常に読み込みますドロップすることができます。

data <- read.csv('t.csv' , stringsAsFactors=FALSE, check.names=FALSE , comment.char='') 
str(data) 

は与える:

> str(data) 
'data.frame': 1 obs. of 2 variables: 
$ a: chr "x" 
$ b: int 0 
> class(data$b) 
[1] "integer" 

あなたは今、第2列にしたいすべてを行うことができるはずです。

GL

+4

または同等に二列に 'type.convert'機能を使用するためにread.csv'原因' 'colClassesの= cで( '文字'、NA)を'を使用します。 – Marek

関連する問題