このような行を持つ複数のブロックを含むスクリプトがあります...
#Read data for X
DataX = read.delim(file = 'XRecords.txt',
col.names = XFields[,'FieldName'])
print('Data X read')
#Convert fields that should be numeric into numeric so they can summed
DataX[,NumFieldNames] = as.numeric(as.character(XData[,NumFieldNames]))
print('Data X scrubbed')
スクリプトをソースすると、次のような出力が得られます...
[1] "Data X read"
[1] "Data X scrubbed"
[1] "Data Y read"
[1] "Data Y scrubbed"
Warning message:
In eval(expr, envir, enclos) : NAs introduced by coercion
その出力に基づいて、データYをリロードし、文字列から数値への変換が失敗したレコードを探し始めました。数時間の欲求不満の後、私はデータXが実際に型変換エラーを持っていたものであることに気づきました。
警告が発生したように見えますが、スクリプトが終了するまでコンソールに表示されません。警告が発生したらすぐにコンソールに出力する方法はありますか?flush.console()を試しましたが、警告に対しては機能しないようです。
回避できる場合は、システムに追加のパッケージをロードしないようにします。私はこれを仕事に使用しており、CRANディストリビューションをコンピューターにインストールするためだけに、いくつかのフープを飛び越えなければなりませんでした。
ありがとうございました。私は助けに感謝します。