3

Rでルーチンを作成して、1つの大きなtxtファイルにマージする必要がある複数のExcelファイルをインポートします。read.xls関数を使用します。これらのxlsファイルの一部には、セルにキャリッジリターンがあります( "\ n")。次に、txtファイル(write.table)を書き込むときに、Rはこの「\n」を新しい行として解釈します。どうすればxlsファイルをクリーンアップするか、正しく読み取って不要な「\ n」を削除できますか?

ありがとう!

4

1 に答える 1

0

テーブルの列はほぼ確実に要因です(これがRの文字列のデフォルトです)。したがって、各列の係数を変更するだけです。

最初にいくつかのダミーデータ

R> dd = data.frame(d1 = c("1", "2\n", "33"), 
                d2 = c("1\n", "2\n", "33"))

##Default, factor
R> levels(dd[,1])
[1] "1"   "2\n" "33"

次に、forループを使用して列名を調べます。

for(i in 1:ncol(dd)) 
  levels(dd[,i]) = gsub("\n","", levels(dd[,i]))

forループを削除して使用する場合sapplyは、これでうまくいくはずです

##Can this be improved?
sapply(1:ncol(dd), 
        function(i) levels(dd[,i]) <<- gsub("\n","", levels(dd[,i])))
于 2012-04-10T10:17:41.000 に答える