. sort price //°´¼Û¸ñ´ÓµÍµ½¸ßÖØÐÂÅÅÐò
. by foreign: sum price weight *not sorted
/* ϵͳÌáʾûÓÐÅÅÐò£¬ÕâÊÇÒòΪby varlist ÔÚÖ´ÐÐʱҪÇóÄÚ´æÖеÄÊý¾ÝÊǰ´ÕÕ
by ºóÃæµÄ±äÁ¿ÅÅÐòµÄ¡£µ±ÎÒÃÇÓÃsort price ÖØÐÂÅÅÐòºó£¬¾Í´òÂÒÁËÔÀ´°´ÕÕ
foreign µÄÅÅÐò£¬ËùÒÔ³öÏÖÁË´íÎóÌáʾ¡£¸üÕýµÄ°ì·¨ÊÇ£º*/
. sort foreign //°´¹ú²ú³µºÍ½ø¿Ú³µÅÅÐò . by foreign: sum price weight
*¸ü¼òÂԵķ½Ê½ÊǰÑÁ½¸öÃüÁîÓÃÒ»¸ö×éºÏÃüÁîÀ´Ð´¡£
. by foreign, sort: sum price weight
Èç¹û²»Ïë´ÓСµ½´óÅÅÐò£¬¶øÊÇ´Ó´óµ½Ð¡ÅÅÐò£¬ÆäÃüÁîΪ gsort¡£
.gsort - price /°´¼Û¸ñ´Ó¸ßµ½µÍÅÅÐò . gsort foreign ¨Cprice /*ÏȰѹú²ú³µ¶¼ÅÅÔÚ
ǰ£¬½ø¿Ú³µÅÅÔÚºóÃæ£¬È»ºóÔÚ¹ú²ú³µÄÚÔÙ°´¼Û¸ñ´Ó´óСµ½ÅÅÐò£¬ÔÚ
½ø¿Ú³µÄÚ²¿£¬Ò²°´´Ó´óµ½Ð¡ÅÅÐò*/
2.5 ¸³Öµ¼°ÔËËã=exp
[by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options]
Àý£ºÉú³ÉÒ»¸öеļ۸ñ±äÁ¿nprice£¬¸Ã±äÁ¿µÄÈ¡ÖµÎªÔÆû³µ¼Û¸ñ±äÁ¿price µÄ»ù´¡ÉÏÕÇ10 Ôª . cd d:/stata9 . use auto, clear
. gen nprice=price+10 //Éú³ÉбäÁ¿nprice£¬ÆäֵΪprice+10 . list price nprice //±È½ÏÒ»ÏÂÁ½¸ö±äÁ¿µÄȡֵ
/*ÉÏÃæµÄÃüÁîgenerate(ÂÔдΪgen) Éú³ÉÒ»¸öеıäÁ¿£¬Ð±äÁ¿µÄ±äÁ¿ÃûΪ nprice,еļ۸ñÔÚÔ¼Û¸ñµÄ»ù´¡ÉϾùÔö¼ÓÁË10 Ôª¡£
. replace nprice=nprice-10 /*ÃüÁîreplace
ÔòÖ±½Ó¸Ä±äÔ±äÁ¿µÄ¸³Öµ£¬nprice µ÷¼õºóÓëprice ±äÁ¿È¡ÖµÏàµÈ*/
. list price nprice //ÔٱȽÏÒ»ÏÂÁ½
¸ö±äÁ¿£¬ÏàµÈ¡£
2.6 Ìõ¼þ±í´ïʽif exp
[by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options]
Àý£ºÈôÖ»Ïë²é¿´¹ú²ú³µµÄÆ·ÅÆºÍ¼Û¸ñ£¬Ôò¼ÓÈëɸ
Ñ¡Ìõ¼þif foreign==0 */
. cd d:/stata9
. use auto, clear
. list make price if foreign==0
*Ö»²é¿´¼Û¸ñ³¬¹ý1 ÍòÔªµÄ½ø¿Ú³µ£¨Í¬Ê±Âú×ãÁ½
¸öÌõ¼þ£©£¬Ôò
. list make price if foreign==1 & price>10000 *²é¿´¼Û¸ñ³¬¹ý1 ÍòÔª»òÕß½ø¿Ú³µ£¨Á½¸öÌõ¼þÈÎ
Âú×ãÒ»¸ö£©
. list make price if foreign==1 | price>10000 *·ÖÀàÐͲ鿴¼Û¸ñ³¬¹ý1 ÍòÔªµÄÆû³µµÄÆ·ÅÆºÍ¼Û
¸ñ
. by foreign, sort: list make price if price>10000
2.7 ·¶Î§É¸Ñ¡in range
[by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options]
Èç¹ûÒª¼ÆËã½ÏµÍµÄǰ10 ̨³µµÄƽ¾ù¼Û¸ñ£¬ÔòÒª
ÏȰ´¼Û¸ñÅÅÐò£¬È»ºó½ö¶Ôǰ10
¸ö³µµÄ¼Û¸ñÇ󯽾ùÖµ . cd d:/stata9 . use auto, clear . sort price . sum price in 1/5
×¢Òâ¡°1/5¡±ÖУ¬Ð±¸Ü²»ÊdzýºÅ£¬¶øÊÇ´Ó1 µ½5 µÄ
Òâ˼£¬¼´1£¬2£¬3£¬4£¬5¡£
Èç¹ûÒª¼ÆËãǰ10 ̨³µÖеĹú²ú³µµÄƽ¾ù¼Û¸ñ£¬
Ôò¿É½«·¶Î§ºÍÌõ¼þɸѡÁªºÏʹÓá£
. sum price in 1/10 if foreign==0
2.8 ¼ÓȨweight
[by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options]
ÈÎÎñ£ºÏ±íÊÇ2005 Äêºþ±±Ê¡¸ß¿¼640 ·Ö¼°ÒÔÉϳɼ¨Ò»·ÖÒ»¶ÎµÄÈËÊýͳ¼Æ£¬µÚÒ»
ÁÐscore Ϊ¸ß¿¼·ÖÊý£¬µÚ¶þÁÐnum Ϊ¸Ã·ÖÊý¶ÎµÄÈËÊý¡£ÏÖÔÚÎÒÃÇÒªÇó640 ·Ö¼°ÒÔ
ÉÏ¿¼ÉúµÄƽ¾ù·ÖÊý¡£ score num
650 193 649 26 648 23 647 16 646 21 645 26