導航:首頁 > 程序命令 > stata畫散點圖命令

stata畫散點圖命令

發布時間:2024-06-26 06:45:52

⑴ 如何用stata畫圖

//lecture 6

cd /Victor/stata

use "nei_sample.dta",clear

edit zipcode

//split默認根據空格拆分 stub前綴 prase on these strings根據什麼拆分(通過觀察)

split facilityname_origin, generate(varnew) parse(,)

split zipcode,generate(zipnew) parse(-)//在2894行 有的沒有破折號需要提取前五位

//按照某種符號拆分字元串

edit zipcode

help substr

//截取

gen zip5=substr(zipcode,1,5)

//生成zip5,表示截取zipcode的前五位 從第一位 截取五位

edit zipcode zip5 if length(zip5) ~=5

//展示長度不等於5的zip5和zipcode

edit zip5

gen len_cn = ustrlen(zipcode)

//生成中文字元串長度

edit fips

gen fips2 = substr(fips, 1,2)

edit fips2

gen fips3 = substr(fips, 3,3)

edit fips2 fips3

destring fips2, replace force

destring fips3, replace force

//字元變數值

tostring fips2 fips3, replace force

//數值變字元

edit fips2 fips3

replace fips2="0"+fips2 if length(fips2)==1

replace fips3="0"+fips3 if length(fips3)==2

replace fips3="00"+fips3 if length(fips3)==1

//前面用零補齊,補成五位

help plicates

//重復觀測值

sort newid

plicates report newid year

//報告重復觀測值

//copies代表這個數據一共有多少個 =1就代表沒有重復 第4541隻有一個觀測值newid

plicates tag newid year, gen(p)

//標注重復觀測值

tab p

//展示搭枯

edit new year if p>=177

plicates drop newid year, force

//去掉重復樣本//兩個都一樣才丟掉

plicates report newid year

ssc install unique

//安裝unique

unique newid year

//展示有幾個是唯一的

unique fips

use nei_sample.dta, clear

help collapse

//壓縮

collapse (sum) so2 co nox nh3 voc (first) facilityname_origin fips zipcode , by(newid year)

//根據newid year重復的字元串變數 (first)後面薯段的三個只取第一個數據 數值變數so2等等。。加總(sum) 沒涉及的變數就丟掉了

plicates report newid year

collapse (sum) so2 co nox nh3 voc (count) newid, by(fips year)

//關於fips year 加總。數出newid(在fips year全都相同的情況下有幾個newid(企業))

//每個地區每一年污染物的多知手洞少,企業有多少

gen id = newid

//replace

//改變面板數據的結構

use nei_sample.dta, clear

help reshape

keep newid year so2

plicates drop newid year, force

reshape wide so2 , i(newid) j(year)

reshape long so2 co nox voc nh3, i(newid) j(time)

//將寬表和長表相互轉換

keep newid year co

reshape wide co,i(newid) j(year)

plicates drop newid year,force

reshape wide co,i(newid) j(year)

reshape long co,i(newid) j(year)//觀測值變成了999*12,轉換兩次之後,數據變成

*balanced data(平衡面板數據)了 也是為了便於做可視化分析,計量分析

//lecture 7

cd /Victor/stata

use "nei_sample.dta",clear

keep newid year so2

//保留這三個

help reshape

//數據重排

plicates drop newid year, force

reshape wide so2 , i(newid) j(year)

//不同問題下i不同 這里的i是企業 j是時間

reshape long so2 co nox voc nh3, i(newid) j(time)

//reshape//long wide lecture7

use "nei_sample.dta",clear

keep newid year so2 co nox voc nh3 sic

plicates drop newid year, force

reshape wide so2 co nox voc nh3, i(newid sic) j(year)

keep newid year so2 co nox voc nh3 sic

reshape wide so2 co nox voc nh3, i(newid sic) j(year)

//數據變少了是因為有的newid對應多個sic

reshape long so2 co nox voc nh3, i(newid sic) j(year)

//通過這種方式將它強行變成平衡面板 先wide 後long(意義重大)

use nei_sample,clear

keep so2 co nox voc nh3 newid year

plicates drop newid year,force

reshape wide so2 co nox voc nh3,i(newid) j(year)

reshape long so2 co nox voc nh3,i(newid) j(time)//三千多個變成了一萬多個

*reshape之後每一個企業都在每一年1990——2011有觀測值,強行將數據變為balanced

ren (so2 co nh3 nox voc) (pol1 pol2 pol3 pol4 pol5)

//更改變數名 為了保證前綴都一樣 才能轉換

*sample

rename so2 pu1

rename co pu2

rename nox pu3

rename voc pu4

rename nh3 pu5

reshape long pu,i(newid time) j(type)

tostring type,replace

replace type="so2" if type=="1"

replace type="co" if type=="2"

replace type="nox" if type=="3"

replace type="voc" if type=="4"

replace type="nh3" if type=="5"

keep newid year pol1 pol2 pol3 pol4 pol5

reshape long pol, i(newid year) j(type)

//??? 沒有drop

tostring type, replace force

//???

replace type = "so2" if type == 1

//替代污染物名稱

use "nei_sample.dta",clear

plicates drop newid year, force

//去掉重復值

edit newid year so2

sort newid year

by newid: gen l1so2 = so2[_n-1]

//so2[1] so2[_N] n-1代表上一行的觀測值 通過企業來分 每個n對於企業來說是不一樣的

by newid: gen l2so2 = so2[_n-2]

//上兩行

by newid: gen l0so2 = so2[_n]

by newid: gen f1so2 = so2[_n+1]

//滯後一期

bys newid: gen Nso2 = so2[_N]

//展示這個企業最後一年的數據

bys newid: gen n1so2 = so2[1]

//有時需要保證它是一個平衡面板:可利用以下命令

xtset newid year

//set panel variable 讓他成為面板數據 如果不告訴它 它永遠按上一行處理

gen lso2 = l.so2

//l.代表上一期的滯後變數(上一年)這個和上一行的數據不一樣喔 有時可能上一行不是上一年 就沒有上一期了

use "nei_sample.dta",clear

plicates drop newid year, force

edit fips year newid

sort fips year newid

by fips year: egen id_sum = count(newid)

//通過fips year來分 如果兩個都相同就算一次

edit fips year newid so2

by fips year: egen so2_fips = sum(so2)

//missing values

//得到地區層面的數據 用於變數的構造 通過微觀數據做加總數據又保留微觀數據本身

//

use "nei_sample.dta",clear

help collapse

collapse (sum) so2 co nox nh3 voc (first) facilityname_origin fips zipcode , by(newid year)

//構造更高層面的行業數據 微觀數據全部損失了. 加總相同年份的污染量,(first)後面的是只保留第一行

plicates report newid year

collapse (sum) so2 co nox nh3 voc (count) newid, by(fips year)

gen id = newid

//replace

//collapse by 2_digit sic and fips_stata (2_dight fips), and year,

use "nei_sample.dta",clear

gen fips3 = substr(fips,1,2)

gen sic2 = substr(sic,1,2)

collapse (sum) so2 co nox nh3 voc ,by( fips3 sic2 year)

//lecture 8

//圖形的組成

sysuse uslifeexp2

decribe

scatter le year

//第一個是y 第二個是x軸

//connect(l) 表示以直線的方式連接相鄰的兩個點

//msymbol(i) 表示散點的顯示方式為「看不見」

scatter le year, connect(l)

scatter le year, connect(l) msymbol(i)

scatter le year, connect(l) msymbol(smdiamond)

//散點形狀改為棱形

scatter le year, connect(l) msymbol(smdiamond) mcolor(lime)

//標記間連線的方式,標記本身的形狀,標記的顏色

help marker_options

//標記標簽的選擇

graph query symbolstyle

help marker_label_options

sysuse lifeexp.dta, clear

describe

list country lexp gnppc if region == 2

scatter lexp gnppc if region == 2, mlabel(country)

scatter lexp gnppc if region == 2, mlabel(country) mlabpos(9)

//將標簽調整到九點鍾方向 這樣美國就可以顯示出來了

//下面嘗試利用 mlabvposition(varname) 選項為某些特殊選項的觀測值設定標簽的位置 為了單獨為美國和宏都拉斯設定標簽顯示方向,

//需要生成一個指標方向的變數,命名為破碎,然後利用這個變數對每個案例的不同附值來調整各個散點的標簽位置

generate pos = 3

//所有國家都是3

replace pos = 12 if country == "Honras"

replace pos = 9 if country == "United States"

scatter lexp gnppc if region == 2, mlabel(country) mlabv(pos)

//下面嘗試利用改變坐標軸的覆蓋范圍來設定標簽

//方法一:利用xscale(range())指定作圖的區域

scatter lexp gnppc if region ==2,mlabel(country) mlabv(pos) xscale(range(-500 3500))

//方法二:利用plotregion( margin())來解決作圖區域的微小變動

scatter lexp gnppc if region == 2,mlabel(country) mlabv(pos) plotregion(margin(l+9))

sysuse autornd, clear

descrbe

scatter mpg weight

scatter mpg weight, jitter(7)

//由於數據點太密集了,產生重疊,需要將數據點輕微地挪動位置,jitter(#)震盪選項

//二維繪圖選項,help twoway

//標題選項,坐標,圖例,增加線,by

sysuse lifeexp.dta, clear

scatter lexp gnppc

gen log_gnppc = log(gnppc)

//對數化,更線性

scatter lexp log_gnppc

//另一種方法:

scatter lexp gnppc, xscale(log)

//做散點圖,並對比y軸刻度使用正常尺度與逆向尺度的異同

sysuse auto.dta, clear

scatter mpg weight

scatter mpg weight, yscale(rev)

//車重與油耗正相關

//下面繪制完全沒有任何坐標的散點圖和有坐標刻度但沒有坐標線的散點圖

scatter mpg weight, yscale(off)

//不要y軸

scatter mpg weight, yscale(noline) xscale(noline)

//去掉了坐標線,保留刻度

help axis_label_options

sysuse auto, clear

describe

sum

//下面分別繪值mpg、weight的標有大約坐標軸上5個10個刻度標識的mpg和weight散點圖

scatter mpg weight

scatter mpg weight, ylabel(#5) xlabel(#5)

scatter mpg weight, ylabel(#10) xlabel(#10)

scatter mpg weight, ylabel(10(5)45) xlabel(1500 1970 2500(1000)4500)

//自定義規則

scatter mpg weight, ytick(#10) xtick(#15)

//繪制x軸大約有15個刻度,y大約10個刻度

scatter mpg weight, ymlabel(##5) xmtick(##10)

//把小刻度的標識也標上去,x軸主刻度之間有10個小刻度

scatter mpg weight , ymlabel(##5) xmlabel(##10)

//時間序列散點圖時的軸線刻度標識問題

sysuse uslifeexp, clear

scatter le year, c(l)

scatter le year, c(l) xlabel(#10,grid)

//網格,用線連

scatter le year, c(l) xlabel(1900(10)2000,grid)

scatter le year, c(l) xlabel(1900 1918 1936 1950(20)2000,nogrid)

scatter le year, lcolor(yellow) c(l) xlabel(1900 1918 1936 1950(20)2000,nogrid)

line le year, lcolor(navy) lpattern(dot)

sysuse uslifeexp, clear

scatter le year, c(l) xlabel(1990 1918 1940(20)2000,grid) legend(on)

label var le_male "男人,人均壽命"

scatter le_male le_female year, legend(label(1 "Male") label(2 "Female"))

//繪制散點圖並添加圖例,將圖例分別改為」male」和」female「

scatter le_male le_female year, c(l) legend(on)

//legend是圖例

⑵ 鎬庝箞鐢╯tata鍒嗘瀽鏁版嵁錛

鎴戜滑鍦ㄥ鉤鏃剁敤SPSS鍋氬洖褰掑垎鏋愮殑鏃跺欎細閬囧埌綰挎у拰闈炵嚎鎬т袱縐嶆儏鍐碉紝鍦⊿PSS涓涓烘垜浠鎻愪緵浜11縐嶅父鐢ㄧ殑妯″瀷渚涙垜浠閫夋嫨錛岃繖綃囨寚鍗楀氨鏁欏ぇ瀹舵庝箞鍚堢悊浣跨敤SPSS鏇茬嚎鎷熷悎錛屼互鍙婃庝箞鍒嗘瀽緇撴灉銆
1銆佹墦寮SPSS杞浠跺悗鍏堟墦寮浣犻渶瑕佸垎鏋愮殑鏁版嵁銆傛墦寮鍙充笂瑙掔殑鏍囪瘑錛岄夋嫨浣犻渶瑕佺殑鏂囦歡錛岀偣鍑匯愭墦寮銆戱紝閫夋嫨鏂囦歡銆
2銆佹墦寮鍚庡傛灉浣犱簨鍏堜笉鐭ラ亾涓や釜鍙橀噺涔嬮棿鏄綰挎ц繕鏄闈炵嚎鎬э紝閭e氨鐢繪暎鐐瑰浘鍒嗘瀽鍏惰秼鍔褲傘愬浘褰銆---銆愭棫瀵硅瘽妗嗐---銆愭暎鐐/鐐圭姸銆---銆愮畝鍗曞垎甯冦---銆愬畾涔夈
3銆佸皢鐩稿簲鐨勫彉閲忚劇疆涓簒,y 杞達紝鐐瑰嚮銆愮『瀹氥戱紝鎺ヤ笅鏉ヤ細鑷鍔ㄥ湪鏂囨。鏌ョ湅鍣ㄤ腑鏄劇ず鏁g偣鍥撅紝濡傛灉閫夊彇鐨勬牱鏈澶氱殑璇濓紝鏈夋椂鍊欎細榪炴垚鏇茬嚎錛屼笉榪囦笉褰卞搷鍒嗘瀽銆
4銆佺『瀹氫笉鏄綰挎у叧緋諱箣鍚庯紝鐢ㄦ洸綰挎嫙鍚堝垎鏋愩傜偣鍑匯愬垎鏋愩---銆愬洖褰掋---銆愭洸綰誇及璁°戱紝榪涘叆鍒版洸綰誇及璁¢潰鏉塊噷闈㈣劇疆銆
5銆佸湪鏇茬嚎浼拌℃嗕腑璁劇疆濂絰,y杞達紝涓嬮潰鐨11縐嶆ā鍨嬩腑鍙浠ラ夋嫨鍏朵腑姣旇緝絎﹀悎鏍鋒湰鍙樺寲鎯呭喌鐨勶紝鍥犱負鍒氬紑濮嬪凡緇忕敾鍑烘暎鐐瑰浘浜嗭紝鎵浠ヨ繖涓姝ラ夋嫨妯″瀷灝辨瘮杈冨規槗錛屽傛灉涓嶇煡閬撻夋嫨閭d釜錛屽氨澶氱偣鍑犱釜銆
6銆佺劧鍚庢壘鍒板拰鏍鋒湰鍥懼儚鏈涓哄惢鍚堝拰鐨勫浘鍍忥紝鐒跺悗鍒嗘瀽緇撴灉銆
7銆丄NOVA閭d釜琛錛屼篃灝辨槸F媯楠岋紝閭d釜琛ㄤ唬琛ㄧ殑鏄瀵逛綘榪涜屽洖褰掔殑鎵鏈夎嚜鍙橀噺鐨勫洖褰掔郴鏁扮殑涓涓鎬諱綋媯楠岋紝濡傛灉sig0.05,璇存槑鑷沖皯鏈変竴涓鑷鍙橀噺鑳藉熸湁鏁堥勬祴鍥犲彉閲忥紝榪欎釜鍦ㄥ啓鏁版嵁鍒嗘瀽緇撴灉鏃朵竴鑸鍙浠ヤ笉鎶ュ憡
8銆佺劧鍚庣湅緋繪暟琛錛岀湅鏍囧噯鍖栫殑鍥炲綊緋繪暟鏄鍚︽樉钁楋紝姣忎釜鑷鍙橀噺閮芥湁涓涓瀵瑰簲鐨勫洖褰掔郴鏁頒互鍙婃樉钁楁ф楠屻
9銆佹渶鍚庣湅妯″瀷奼囨婚偅涓琛錛孯鏂瑰彨鍋氬喅瀹氱郴鏁幫紝瀹冩槸鑷鍙橀噺鍙浠ヨВ閲婄殑鍙樺紓閲忓崰鍥犲彉閲忔誨彉寮傞噺鐨勬瘮渚嬨
宸ュ叿/鏉愭枡
鐢佃剳
IBM SPSS Statistics 19

⑶ stata命令有哪些

1、format x1 %10.3f ——將x1的列寬固定為10,小數點後取三位;

2、format x1 %10.3g ——將x1的列寬固定為10,有效數字取三位;

3、format x1 %10.3e ——將x1的列寬固定為10,採用科學計數法;

4、format x1 %10.3fc ——將x1的列寬固定為10,小數點後取三位,加入千分位分隔符;

5、format x1 %10.3gc ——將x1的列寬固定為10,有效數字取三位,加入千分位分隔符;

6、format x1 %-10.3gc ——將x1的列寬固定為10,有效數字取三位,加入千分位分隔符,加入「-」表示左對齊;

7、generate——生成新變數的命令,注意:變數名稱只能用英文和數字,且若名稱中同時有英文和數字,必須以英文開頭。

8、drop——去除變數的命令,如果想把變數z給去掉,那麼可以輸入命令:drop z;

9、twoway (scatter y x)(lfit y x)——畫出擬合線,注意:這個命令最開始的字母twoway也可以簡寫為tw。

10、scatter y x——畫散點圖,注意:在Stata的許多命令中,因變數一般都放在自變數前面。

⑷ 瀵逛簬璺ㄥ浗闈㈡澘鏁版嵁錛屾庢牱鍦╯tata涓濡備綍鐢ㄦ暎鐐瑰浘鏉ユ煡鐪嬪浗瀹墮棿鐨勫樊寮

鍛戒護濡備笅錛
scatter y x , by(鍥藉訛級

閱讀全文

與stata畫散點圖命令相關的資料

熱點內容
原神的伺服器如何分辨 瀏覽:886
每天pdf 瀏覽:518
安卓手機怎麼設置關閉屏幕時間 瀏覽:815
雲伺服器有寶塔面板嗎 瀏覽:518
中行app如何看基點 瀏覽:204
怎麼限制網路連接的人數安卓 瀏覽:177
怎麼把app數據清理 瀏覽:834
什麼APP既 瀏覽:227
兩台阿里雲伺服器怎麼並行 瀏覽:633
觸控筆如何關閉app 瀏覽:123
linux永久關閉防火牆命令 瀏覽:401
spsspdf下載 瀏覽:689
奧維坐標怎麼加密 瀏覽:720
常用的負載均衡演算法 瀏覽:405
java萬年歷源碼 瀏覽:881
如何將安卓手機搬家到蘋果手機 瀏覽:440
怎麼改wifi加密方式 瀏覽:415
pic單片機串口 瀏覽:256
擾流演算法 瀏覽:426
什麼伺服器可以覆蓋城市 瀏覽:562