〈前提〉
MacでRを使っています。
finderには表示してくれない隠しデータをダウンロードして分析に用いているので、読み込みはload("")で直接行っています。
〈わからないこと〉
data.log.core30という株式の収益率データを、累積収益率データに変換するところまでは異常ないのですが、データフレームに変換するところでマルチバイトエラーが発生していまいます。
> data.cum.core30<-lapply(data.log.core30,function(x){cumprod(1+x/100)}) > data.cum.core30<-data.frame(data.cum.core30) make.names(vnames, unique = TRUE) でエラー: '<82>i<82>s' に不正なマルチバイト文字があります
データの読み込みで予めエンコーディングができないので、どのように対処すれば良いのかわからず困っています。
〈試したこと〉
パッケージDBIのicov()を用いて文字コードを変換しました。変換直後はなぜか文字列になってしまうので、その後実数値に変換したのですが、その際データフレームにNAが発生してしまいます。
> data.log.core30a<- iconv(data.log.core30,to="CP932") > str(data.log.core30a)#型の確認 chr [1:29] "c(-2.3327191657974, -0.131204917138383, -0.0437732552404313, -0.0876040353879226, 0.742199434116042, -2.6891635"| __truncated__ ... > data.log.core30b<-as.numeric(data.log.core30a) 警告メッセージ: 強制変換により NA が生成されました
NAが発生した状態では、データフレームへの変換までは異常なかったものの、その後の分析に支障をきたしてしまいます。
マルチバイトエラーかベクトル型変換の際のNA発生のどちらかを防げれば解決できると思うので、どなたか教えていただけないでしょうか。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。