[解決済み] 相関エラー: 'x' は数値でなければなりません
2022-02-14 03:34:41
質問
を持っています。
XTS
という多くの株価の終値を含むデータセットがあります。
dataset
. そして、これらのリターンに相関があるかどうかを、以下の方法で調べたいと思います。
cor()
しかし、エラーメッセージが表示されます。
Error in cor(RETS) : 'x' must be numeric
.
以下は、私が行ったことです。
RETS <- CalculateReturns(dataset, method= c("log")) # Calculate returns Via PerformanceAnalytics
RETS<- na.locf(RETS) #Solves missing NAs by carrying forward last observation
RETS[is.na(RETS)] <- "0" #I then fill the rest of the NAs by adding "0"
のサンプルはこちらです。
RETS
row.names A.Close AA.Close AADR.Close AAIT.Close AAL.Close
1 2013-01-01 0 0 0 0 0
2 2013-01-02 0.0035 0.0088 0.0044 -0.00842 0
3 2013-01-03 0.0195 0.0207 -0.002848 -0.00494 0
4 2013-01-06 -0.0072 -0.0174 0.0078 -0.00070 0
5 2013-01-07 -0.0080 0 -0.01106 -0.03353 0
6 2013-01-08 0.0266 -0.002200 0.006655 0.0160 0
7 2013-01-09 0.0073 -0.01218 0.007551 0.013620 0
そして、相関関係を実行します。
#Perform Correlation
cor(RETS) -> correl
Error in cor(RETS1) : 'x' must be numeric
#Tried using as.numeric
cor(as.numeric(RETS), as.numeric(RETS) -> correl
しかし、答えは "1"です。の相関関数も使ってみました。
psych
が、同じエラーメッセージが表示されます。
どうすればいいですか?
ローランドさんの回答を追加して、質問を終了します。
を使用することが問題です。
RETS[is.na(RETS)] <- "0"
は、数値に文字値を加えると自動的にdata.typesが文字に変わるので、すべてのデータを文字にしています。したがって、相関をとろうとするとき、文字値に対してそれを行う方法はない。そこで、単純に
RETS[is.na(RETS)] <- 0
の代わりに、変換の問題を回避する必要があります。
欠損値を設定するのではなく
NA
を明示的に指定することもできます。
cor
欠損値をどのように扱うか 例えば
cor(RETS, use="pairwise.complete.obs")
は、2つの変数の相関を、両方がnot-NAであるペアの場合のみ計算します。を参照してください。
?cor
のヘルプページで、すべてのオプションが確認できます。
関連
-
[解決済み】エラー:ベクターメモリの枯渇(制限に達したか) R 3.5.0 macOS
-
[解決済み】apply()とadply()の出力が異なる件)
-
[解決済み】Rで立方根と対数変換をする
-
[解決済み】match.fun(FUN)でのエラーについて)
-
[解決済み】r Error dim(X) must have a positive length?
-
[解決済み】Rで結果の行数がベクトル長(arg 2)の倍数でない件
-
[解決済み】ggplot2でのプロット:「Error: カテゴリ軸のY軸に "Discrete value supplied to continuous scale "と表示される。
-
[解決済み] HTMLのinputboxでjQueryを使って数字(0-9)だけを許可する方法は?
-
[解決済み] JavaでStringが数値かどうかを確認する方法
-
[解決済み] 情報を損なわずに因数を整数値に変換するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】"置換する項目数が置換長の倍数でない "と表示されるのはなぜですか?
-
[解決済み】基本 - T-検定 -> グループ化因子は正確に2水準でなければならない
-
[解決済み] テスト
-
[解決済み】エラー。Rの'break'の数が無効
-
[解決済み】ggplot boxplotでPosition-dodge警告?
-
[解決済み】R ggplot2 で scale_x_discrete を使用する。
-
[解決済み】 file(filename, "r", encoding = encoding) : cannot open the connectionでエラーが発生する。
-
[解決済み】Rヒストグラムの範囲エラー:いくつかの'x'がカウントされない; 'break'が'x'の範囲に及ばないかもしれない
-
[解決済み】Rはプロットするが、アブラインを描画しない
-
[解決済み】エラー - replacement has [x] rows, data has [y].