2017-12-08 7 views
0

私の意図は、csv形式の単純な行列をフォーマットすることです。フォーマットされた行をさらに処理する必要があるため、書式設定された文字列をファイルに書き込むことは望ましくありません。R変数にcsvファイルを書き込もうとしています

私はすでにtextConnectionを使って試してみましたが、これは正しいアプローチです。

m<-matrix(c(1,2,3,4), nrow=2) 
result<-write.csv(m, file=textConnection(csvData), row.names=FALSE, col.names=FALSE) 

私はラインを含むベクターのような形式のCSV(ファイル)の内容を含むようにcsvDataを期待しています。

私はエラーを取得する:

Error in textConnection(csvData) : invalid 'text' argument 

textConnectionの適切な使用は何ですか?

改訂質問

いくつかは、私が

rm(list = ls()) 
m<-matrix(c(1,2,3,4), nrow=2) 
result<-write.csv(m, file=textConnection("csvData", "w"), row.names=FALSE, col.names=FALSE) 

になってしまったすべての変数をしようとし、洗浄後これは、少なくとも、エラーを生成しませんが、私はcol.namesが無視されるという警告で終了しました。 csvDataの内容は、私は、ヘッダーを削除する方法

> csvData 
[1] "\"V1\",\"V2\"" "1,3"   "2,4" 

期待何もないですか?

私のソリューション

試みた後、私はwrite.csvwrite.tableで交換する必要があることを発見しました。

rm(list = ls()) 
m<-matrix(c(1,2,3,4), nrow=2) 
result<-write.table(m, file=textConnection("csvData", "w"), row.names=FALSE, col.names=FALSE, sep=";") 
+1

からwrite.csv()を試しますか? 'read.csv(" mymatrix.csv ")'で確認してください。 –

+0

はい、ただし、出力ファイルにヘッダーと行の名前は必要ありません。私は 'write.csv(m、" mymatrix.csv "、row.names = FALSE、col.names = FALSE)'と思っていました。 – Aleph0

+0

しかし、 'col.names'は無視されます。なぜ' write.csv'にはパラメータ 'col.names'がありますか?それはちょうど無視されていますか? – Aleph0

答えて

1

`write.csv(M、 "mymatrix.csv")は`所望の出力を生成しないMASS

MASS::write.matrix(m, file = textConnection("csvData", "w"), sep = ";") 
+1

ありがとうございますが、私はファイルに書きたくありません。私はファイルの行を含むベクトルに書きたいと思っていました。私はすでに解決策を見つけました。あなたの努力に感謝します。 – Aleph0

+0

ようこそ。私は自分の答えを更新しました。 – ANG

+0

陽気。多くのおかげで、私はすでに自分のために働く解決策を見つけましたが。 – Aleph0

関連する問題