問題タブ [quantreg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 分位点回帰で特定の分位点に含まれる観測値を抽出する方法は?
quantreg
~2000 の観測値のデータベースがあり、パッケージを使用して 95 パーセンタイルで分位点回帰を行いました。
さらに分析を行うために、95 パーセンタイル回帰の勾配と切片の計算に実際に使用された観測値を特定したいと考えました。それを行う方法はありますか?
これは私がこれまでに使用したコードですquantreg
:
ここにデータファイルがあります: http://www.filedropper.com/quantregexample
r - 要約からの係数と間隔の抽出による行列の構築
私はこのdata.frameを持っています:
そして、分位点回帰を実行します:
例えば:
次のようなマトリックスを作成したい:
最初の行は最初のモデルに関連付けられます。最初の列は切片パラメータ、2° と 3° の列はその信頼区間 (summary
出力から抽出する)、4° の列は変数パラメータ、5° と 6° の列はその間隔 (summary
出力から抽出する)です。
r - R quantreg: 配列の範囲と等しくない dimnames の長さ
私はRが初めてです。quantreg
単純なエラーである可能性があることを理解しようとしています。quantreg ヘルプ ファイル (および他の多くのオンライン ソース) で提供されているサンプル コードに多かれ少なかれ正確に従っていますが、サンプル データ セットではなく、私のデータ セットを使用しています。次のコードを実行します。
最初の行は正常に実行されます。最終行 (を使用plot.summary.rqs
) で、エラー メッセージが表示されます。
`rownames
<-
`(`*tmp*`, value = c("x1", "x2", "d1")) のエラー: 'dimnames' [1] の長さが配列の範囲と等しくありません
エラーの原因は特定できませんでした。これが私がこれまでに理解したことです:
- 信頼区間なしで問題なく図を作成できます。つまり、
plot.rqs(rq.xy.1)
説明変数ごとに (分位数にわたる) 係数のプロットを実行して返すことができます。しかし、私は信頼バンドが欲しいです。 - Object
rq.xy.1
は class のオブジェクトですrqs
( の出力はclassのrq
オブジェクトであるか、これは です)。rq
rqs
rq.process
rqs
- Object
s2
は class のオブジェクトですsummary.rqs
。 - つまり
s2
、リストです (RStudio の [環境] ペインに表示されるのはこれだと思います)。これが重要かどうかはわかりません。私はそれをスキャンして、呼び出されたものの長さの有用な指標があるかどうかを確認しましdimnames
たが、明らかに有用と思われるものは何も見ませんでした - (別のオンライン ヘルプ スレッドを読んだことに基づいて)電話
traceback()
をかけましたが、有用と思われるものは何も生成されませんでした。 - 私は( r の線形回帰の要約で「 'dimnames' [1]の長さは配列の範囲と等しくない」というエラーを
model.matrix(y~-1+x1+x2+d1, data=xy.df
読んだことに基づいて)試しましたが、それでも手がかりは得られませんでした。ではなく、エラーがスローされているためだと思います。エラーの原因を明らかにするために使用できる場合は、方法がわかりません。ここでアドバイスをいただければ幸いです。plot.summary.rqs
summary
model.matrix
この時点で、私はかなり立ち往生しています。多くのソースを検索しましたが、このエラーを理解できません。ご協力いただきありがとうございます。
この行の下の元の質問を編集します。
編集 1. 私のデータのサブセット (問題を再現するための最小限のもの) は次のとおりです: https://www.dropbox.com/s/9mges3kuro6ty5s/tmp_data?dl=0
編集2.データのいくつかのサブセットを使用して、問題をさらに調査しました。ここに役立つ情報があります。私のデータフレームには、基本的に 4 種類の行があります。簡単に参照できるように、大文字でラベルを付けます。
- A: y、x1、x2 はすべて NA です。d1=0
- B: y、x1、x2 はすべて NA です。d1=1
- C: y、x1、x2 はすべて数値 (連続) です。d1=1
- D: y、x1、x2 はすべて数値 (連続) です。d1=0
上記の質問で指摘したエラーを生成するには、タイプ D の行が 1 つ以上存在するだけで十分なようです。(また、すべての行がタイプ D の場合、計画行列が特異であるため、rq() は失敗します。) これは興味深いことです。quantreg は、説明変数の 1 つが 0/1 の場合に正常に動作するはずです (実際、rq() は正常に動作します)。説明変数の 1 つがダミー (変動あり) の場合にエラーをスローする plot.summary.rqs() についてはどうですか?
編集3.問題を解決する方法を見つけ、それらのサブセットを再度調査しました。エラーの理由はまだわかりませんが、推定式に定数を含めることで問題を回避できます。
私が評価しようとしている関係についてさらに考えてみると、定数を含めることが計量経済的にも正しいアプローチであることがわかりました。したがって、この問題は解決したと思います(とにかく今のところ)。
Jimbou さん、助けてくれてありがとう - 前述のように、私は R にまったく慣れていないので、最小限のデータセットを提供する方法を見つけようとしたことが、データのサブセットで問題を再現しようとするきっかけになりました。もし私がそれを試みていなかったら、上記の編集 2 で観察したことはなかっただろうし、おそらくこの幸せな結論に達しなかったでしょう.
r - Fedora に quantreg パッケージをインストールする際の問題
AER
パッケージをインストールしようとしましたquantreg
が、依存関係があります。次の警告が表示され、AER
インストールされていません。
その後、インストールしようとしquantreg
ましたが、同じエラーが発生しました。
URLを見たところ、最新版はquantreg_5.26
. どうにかしてこのバージョンを Rstudio からインストールできますか、それともAER
パッケージに古いバージョンが必要ですか? どのように進めればよいですか?
R バージョン 3.3.0 を使用しています。
r - R quantreg パッケージの rq 関数に関する問題
データの動的線形回帰を実行する必要があります。私のデータは、論文が過去 20 年間に被引用された回数に関するもので、累計です。現在、行は個々の論文で、列は 1995 年からの年です。「hasTsp(x) のエラー: 指定された時系列パラメータが無効です」というエラーが頻繁に発生します。問題がデータのタイプであるかどうかはわかりません。それはリストとしてインポートされ、 上記のリンクで説明されている解決策であるリストオブジェクトを強制的に「double」型にする方法を使用して double に変換しました。適切な時間ベースのオブジェクトが必要なため、xts パッケージの使用に問題がありました。ヘッダー = T および F でデータをインポートしようとしました。問題は、データの編成方法または数式が原因である可能性もあります。私は使用してみました: