割合を分析する


13

合計が1になる複数の比率を含むデータセットがあります。勾配に沿ったこれらの比率の変更に興味があります(データの例については以下を参照)。

gradient <- 1:99
A1 <- gradient * 0.005
A2 <- gradient * 0.004
A3 <- 1 - (A1 + A2)

df <- data.frame(gradient = gradient,
                 A1 = A1,
                 A2 = A2,
                 A3 = A3)

require(ggplot2)
require(reshape2)
dfm <- melt(df, id = "gradient")
ggplot(dfm, aes(x = gradient, y = value, fill = variable)) +
  geom_area()

ここに画像の説明を入力してください

追加情報: 必ずしも線形である必要はありません。例の簡単さのためにこれを行いました。これらの比率を計算する元のカウントも利用できます。実際のデータセットには、最大1個の変数(B1、B2およびB3、C1からC4など)が追加されているため、多変量ソリューションのヒントも役立ちます。しかし、今のところは単変量に固執します統計の側面。

質問: このような種類のデータを分析するにはどうすればよいですか?少し読みましたが、おそらく多項モデルまたはGLMが適していますか?-3(または2)glmsを実行する場合、予測値の合計が1になるという制約をどのように組み込むことができますか?そのような種類のデータだけをプロットするのではなく、分析のようなより深い回帰を行いたいです。Rを使用したい-Rでこれを行うにはどうすればよいですか?


コマンドproprcsplineのStataでは、あなたは(私はあなたが使用したい知って探しているものかもしれませんRが、多分これは、開始時点することができる):proprcsplineは、制限されたキュービックスプラインがyvar与えXVARの各カテゴリでの観測の割合の円滑計算し、積み上げ面積プロットとしてグラフ化します。オプションで、これらの平滑化された比率は、制御変数(cvar)のセットに対して調整できます。
boscovich

「興味がある」とはどういう意味ですか?単に勾配に対して比率をプロットしたいだけですか?または、より深い分析を念頭に置いていますか?もしそうなら、その性質は何ですか?これらのデータから正確に何を学びたいですか?また、元のカウントを使用できますか(これは良いと思いますか)、または比率のみですか?これらのデータが何で構成され、どのように収集されるかについてもう少しお聞かせください。
whuber

1
@whuber:このデータを使ってより詳細な分析を行いたいです。私の仮説では、割合は勾配によって変化します。カウントも利用可能です。
EDI

1
組成データがあるようですね。私はそれについてあまり知りませんが、Aitchisonの仕事は出発点です。CRANにはパッケージ、コンポジションがあります。
アーロンはスタックオーバーフローを去りました

回答:


13

1つの次元では、これはベータ回帰の仕事のように聞こえます(変数分散の有無にかかわらず)。これは、ベータ分布の従属変数を使用した回帰モデルであり、自然に0-1が制約されます。Rパッケージはbetaregであり、その使用法を説明した論文はこちらです。
2つ以上の比率の場合、ベータ分布の通常の拡張はディリクレ回帰につながります。RパッケージDirichletRegが利用可能です。たとえば、ここで説明します

真の組成データにロジットリンクと多項ロジスティック回帰を使用しない理由はいくつかありますが、主な理由は、それらが分散に対してどのような強い仮定を意味するかです。ただし、データがすべて実際に正規化されたカウント(豊富さ?)である場合、これらの仮定は正しい可能性があり、ピーターの提案がおそらく進むべきでしょう。


リンクをありがとう、私はそれらを見ていきます。DirichletRegは有望に見えます!たとえば、リンクのスライド3:「特定のカテゴリで回答する「確率」が選択肢全体に広がっている場合、ディリクレのアプローチはより有益です。」。選択肢が一意である必要はないので、私はmlogitでこれを行う方法を知りませんでした。また、グラフィカルな表現の良い方法
それ

グラフィックスの場合、R関数splineplotおよびcdplotが役立つことがあります。あなただけのフィットラインを望んでいたと回帰機械の多くを必要としなかった場合は確かにあなたはおそらく同軸でしcdplotをあなたに関連する曲線(それが唯一だ与えるに密度の下)
conjugateprior

申し訳ありませんが、明らかにスピネプロットを入力するつもりでした
共役前

DirichletRegパッケージがCRAN利用可能になり、ビネットが公開されていることに注意してください。
jbaums

4

あなたが何を見つけようとしているのか正確にはわかりませんが、勾配を独立変数とする多項ロジスティック回帰についてはどうですか?

Rでは、これを行う1つの方法は、mlogitライブラリのmlogit関数です。このビネットを見る

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.