2013-08-21 1304 views
1

我想創建一個圖表,查看感染疾病的每個年齡組中的百分比,即它們在變量eggs10中的平均蛋數> 0,然後將其分爲感染lightly或感染.的百分比。Stata中100%類別的百分比?

我有一個在他們的尿液平均蛋計數變量:eggs10

我對誰我在看gender

我有強度的變量的變量:lightheavy

當我輸入:

gr bar (count) eggs10, stack asyvars over(intense) by(gender) percent 

它給我100%的男性和f emales作爲他們的感染流行!我如何獲得eggs10> 0作爲y軸的百分比?

回答

2

by()的影響是單獨處理性別。也就是說,Stata的觀點是你要求分別計算百分比。您可能需要over(gender)

(更新)示例數據與原始示例有很大不同。

. input str1 child Meanegg str1 gender str5 intensity 

child Meanegg  gender intensity 
1. a 0 M None 
2. b 55 F Heavy 
3. c 47 F Light 
4. end 

. encode gender, gen(Gender) 
. encode intensity, gen(Intensity) 

考慮catplot,可以使用

. ssc inst catplot 

試着這麼做

. catplot Intensity Gender, asyvars percent(Gender) stack recast(bar) 

(第二次更新)意識到發生了什麼graph bar (count)確實是很重要的下載。看看這些例子:

. sysuse auto 
. graph bar (count) mpg 
. graph bar (count) mpg , over(foreign) 

這是從第二個圖表。這裏的(count)計數具有非缺失值的觀察值的數目。這在幫助中解釋。然而,這很少是人們在這裏想要的:更常見的是,人們希望計數變量的不同類別。這可以通過graph bar完成,但catplot(SSC)更容易。

要對示例圖進行拼寫:圖表告訴您,國內汽車有52個非缺失值mpg,外國汽車有22個非缺失值。該圖沒有說明mpg的實際值。

你可以說:但是圖表顯示了foreign不同類別的頻率。是;但僅限於mpg的非缺失值,對於每個非缺失值foreign

enter image description here

(第三次更新)(在響應評論8月26日)研究以下內容:

. clear 

. input var1 str3 var2 

     var1  var2 
     1. 44 "Yes" 
     2. 36 "No" 
     3. end 

. graph bar (asis) var1, over(var2) 

. graph bar (asis) var1, over(var2) percent 

. graph bar (asis) var1, over(var2) percent asyvars bargap(20) 
+0

沒了,不能正常工作! – Exodia16

+1

然後發佈樣本數據。 –

+0

好吧,我們有一個變量的孩子:meanegg(從0個雞蛋(即沒有感染)到1052個雞蛋的數值變量),性別(M或F),強度(如果meanegg> 0則分類爲light,如果meanegg分類爲'heavy' > 50)。你是這個意思嗎? – Exodia16