0

ChemoSpec files2SpectraObect コマンドを使用して NIR スペクトルを読み込もうとしています。データは *csv ファイルから直接取得されますが、次のエラー メッセージが表示されます。

files2SpectraObject(gr.crit = c("BP","TP"), + gr.cols = c("red3","dodgerblue4"), + freq.unit = "波長", + int.unit = "反射率" , + descrip = "アベニュー サンプル", + format = "csv", + out.file = "NIR.ave")

Converting integer frequency values to numeric
*** There seem to be one or more problems with these spectra!
Error in chkSpectra(spectra) : 
  Sorry, we can't continue this way: It's not me, it's you!
In addition: Warning message:
In chkSpectra(spectra) : The frequency data appear to be corrupt

setwd("W:\SciFac\OrgGeochem\Staff\Darren Beriro\PhD\R_PhD\MIR スペクトル ファイル") files2SpectraObject(gr.crit = c("bp","tp"), + gr.cols = c("red3 ","dodgerblue4"), + freq.unit = "波長", + int.unit = "反射率", + descrip = "アベニュー サンプル", + format = "csv", + out.file = "MIR.ave" )

csv ファイルの作成に使用したデータフレームを確認しましたが、波数は数値変数です。データ範囲は 350 ~ 2500 の整数です。同じ方法で FTIR / MIR データをロードしました。周波数値には小数点以下の桁数が含まれており、これらのファイルは正常にロードされます。

4

2 に答える 2

1

さて、最初の関数内で呼び出される関数である files2SpectraObject と chkSpectra のコードを 1 行ずつ調べました。私が見る2つの問題があります。

周波数が整数の場合、chkSpectra は警告をスローして関数を停止します。あなたのデータでこれを修正できるとは思いません。大ざっぱですが、この修正をお勧めします。

修正(chkSpectra)

stop() を実行する 81 行目を削除します。

fix(files2SpectraObject)

171 行目で、同じ引数を使用して saveObject() を save() に変更します。これは、私が持っていない一般的なパッケージにないバグまたは機能のようです。

fix を使用しても関数は一時的に修正されるだけなので、ワークスペースを保存しない限り、csv をロードするたびにこの修正を再実行する必要があります。

于 2015-01-16T23:52:49.827 に答える