データセット名:sample。グループごとに1つの機能の比率を取得するコードを改善しましたか?
のCol1:ID
Col2に:SEX(2つのレベル "M"、 "F" を有する因子)
COL3:
SIU(2つのレベル "Y"、 "N" の因子)SIUでSEXの比率を取得したい。 私はこのコードで結果を得ることができます。
prop.table(table(sample %>% filter(SIU=="N") %>% select(SEX)))
prop.table(table(sample %>% filter(SIU=="Y") %>% select(SEX)))
が、それは2回実行する必要があるので、それは2文で構成されています。
同じことを行うためのより良い、簡単な方法はありますか?
編集:上記のコードの
結果
> m f
> 0.4529346622 0.5470653378
> m f
> 0.3604651163 0.6395348837
それは私が取得したいものですが、私は自分のコードが最善ではないと思います。
おそらく '' GROUP_BY(SIU)で ' – timfaber
は、私はあなたがセックスの比率を望むかどうかはわかりませんけど、多分集計を助けることができる'フィルタ(SIU == "N")を置き換える: '集計(DF $を(df $ SIU)、関数(x)合計(x == 'm')/長さ(x)) ' – Osdorp
私の不明な質問は申し訳ありません。私はこのようにしたい:N:0.45(男性)0.54(女性)、Y:0.36(男性)0.64(女性) –