2017-05-23 8 views
-1

Rでdata.frame関数を使用して、サンプルデータセットを作成しています。ただし、文字列のベクトルはファクタの列に変換されます。data.frame関数で文字変数を作成する

文字列(たとえばvar1)のベクターを文字のデータセットにするにはどうすればよいですか?

現在のコードは、以下に示すように、出力

結果の

df = data.frame(var1 = c("1","2","3","4"), 
       var2 = c(1,2,3,4)) 

var1が要因です。 chrクラスにはvar1が必要です。このpostに基づいて

> str(df) 

'data.frame': 4 obs. of 2 variables: 
$ var1 : Factor w/ 4 levels "1","2","3","4": 1 2 3 4 
$ var2 : num 1 2 3 4 

トラブルシューティング

、私はas.characterを追加しようとしたが、var1が要因のまま。

df = data.frame(var1 = as.character(c("1","2","3","4")), 
       var2 = c(1,2,3,4)) 
+1

'?data.frame'を参照してください。あなたが探しているのは 'stringsAsFactors = FALSE'です。 – neilfws

+0

'stringsAsFactors = FALSE'を使うと動作しました。私はこれまでこれを試していましたが、 "FALSE"の列を作成しました。だから私は間違いをしたに違いない。 – Danielle

+0

おそらくFALSEを引用符で囲みます。 – neilfws

答えて

2

stringsAsFactorsはあなたの友人です。すなわち:

df = data.frame(var1 = c("1","2","3","4"),var2 = c(1,2,3,4),stringsAsFactors = F) 

は降伏:

> str(df) 
'data.frame': 4 obs. of 2 variables: 
$ var1: chr "1" "2" "3" "4" 
$ var2: num 1 2 3 4 
0

文字変数の代わりに、因子変数を作成します引数stringsAsFactors=FALSEを追加し、コメントに基づいて。

関連する問題