5

MASS の write.matrix を使用してマトリックスを .csv ファイルに書き込もうとしていますが、いくつか問題があります。マトリックスを印刷すると、次のようになります

    p q         s         S2         R2      R2adj          Cp      AIC     PRESS
1   0 1 167.27779 27981.8583         NA         NA 3679.294476       NA        NA
2   1 2 160.32254 25703.3165 0.08866209 0.08142925 3343.909110 1666.993 3338167.3
3   1 2  86.73559  7523.0630 0.73326195 0.73114498  891.016823 1509.726 1045980.3
4   1 2  67.50458  4556.8690 0.83843145 0.83714916  490.815893 1445.555  693993.5

しかし、私がするとき write.matrix(moDat2, file = paste(targetPath, "dat2.csv", sep="/"), sep=",")

このようにファイルに保存します

p,q,s,S2,R2,R2adj,Cp,AIC,PRESS
0.000000e+00,1.000000e+00,1.672778e+02,2.798186e+04,          NA,          NA,3.679294e+03,          NA,          NA
1.000000e+00,2.000000e+00,1.603225e+02,2.570332e+04,8.866209e-02,8.142925e-02,3.343909e+03,1.666993e+03,3.338167e+06
1.000000e+00,2.000000e+00,8.673559e+01,7.523063e+03,7.332620e-01,7.311450e-01,8.910168e+02,1.509726e+03,1.045980e+06

とにかく、データを科学表記法に変換せずにファイルに保存できますか?

4

2 に答える 2

6

format通話中に使用できますwrite.matrix

  write.matrix(format(moDat2, scientific=FALSE), 
               file = paste(targetPath, "dat2.csv", sep="/"), sep=",")
于 2012-12-09T07:26:11.880 に答える
0

MASS::write.table の help(page は、使用可能なコントロールがあることを示唆していません。これは、write.table数値の書式設定に関するヘルプ ページの説明です。

「ほとんどすべての場合、数値の変換はオプション "scipen" (オプションを参照) によって制御されますが、内部では digits=15 に相当します。より細かく制御するには、format を使用して文字行列/データ フレームを作成し、その上に write.table 。」

于 2012-12-09T06:56:57.893 に答える