Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 在Stata中总结观察结果_String_Statistics_Stata_Data Management - Fatal编程技术网

String 在Stata中总结观察结果

String 在Stata中总结观察结果,string,statistics,stata,data-management,String,Statistics,Stata,Data Management,我在统计数据。我有英国地方当局代码(例如E06000047)和数据集,数据集更深一层(MSOA) 因为我对MSOA级别的数据不感兴趣,所以我想将数据汇总到本地身份验证代码级别。我失败的地方是我不能用字符串数据计算。我想做的是: foreach identical "Local authority code" take the mean/median and store it in a var "means.local-auth" 所以我期望的是: Local authority code

我在统计数据。我有英国地方当局代码(例如E06000047)和数据集,数据集更深一层(MSOA)

因为我对MSOA级别的数据不感兴趣,所以我想将数据汇总到本地身份验证代码级别。我失败的地方是我不能用字符串数据计算。我想做的是:

foreach identical "Local authority code" take the mean/median and 
store it in a var "means.local-auth"
所以我期望的是:

Local authority code  means.local-auth  median.local-auth
E06000047             474.00            480.00
E06000048             486.00            485.00

对于这种简单的摘要,不需要循环。下面是一个可复制的示例,使用
egen
使用
by()
生成变量(其参数可以是数字或字符串,实际上不需要是单个变量)
tabdisp
可以方便地进行简单的制表

sysuse auto, clear
egen mean_mpg = mean(mpg), by(rep78) 
egen median_mpg = median(mpg), by(rep78) 

tabdisp rep78, c(mean_mpg median_mpg) 

----------------------------------
Repair    |
Record    |
1978      |   mean_mpg  median_mpg
----------+-----------------------
        1 |         21          21
        2 |     19.125          18
        3 |   19.43333          19
        4 |   21.66667        22.5
        5 |   27.36364          30
        . |       21.4          22
----------------------------------

tabdisp rep78, c( mean_mpg median_mpg) format(%2.1f)

----------------------------------
Repair    |
Record    |
1978      |   mean_mpg  median_mpg
----------+-----------------------
        1 |       21.0        21.0
        2 |       19.1        18.0
        3 |       19.4        19.0
        4 |       21.7        22.5
        5 |       27.4        30.0
        . |       21.4        22.0
----------------------------------

对于这种简单的摘要,不需要循环。下面是一个可复制的示例,使用
egen
使用
by()
生成变量(其参数可以是数字或字符串,实际上不需要是单个变量)
tabdisp
可以方便地进行简单的制表

sysuse auto, clear
egen mean_mpg = mean(mpg), by(rep78) 
egen median_mpg = median(mpg), by(rep78) 

tabdisp rep78, c(mean_mpg median_mpg) 

----------------------------------
Repair    |
Record    |
1978      |   mean_mpg  median_mpg
----------+-----------------------
        1 |         21          21
        2 |     19.125          18
        3 |   19.43333          19
        4 |   21.66667        22.5
        5 |   27.36364          30
        . |       21.4          22
----------------------------------

tabdisp rep78, c( mean_mpg median_mpg) format(%2.1f)

----------------------------------
Repair    |
Record    |
1978      |   mean_mpg  median_mpg
----------+-----------------------
        1 |       21.0        21.0
        2 |       19.1        18.0
        3 |       19.4        19.0
        4 |       21.7        22.5
        5 |       27.4        30.0
        . |       21.4        22.0
----------------------------------

由于您的问题不清楚您的目标是生成一份报告(如Nick的报告),还是向地方当局级别的分析迈出第一步,因此下面的代码使用
collapse
获取数据并将其缩减到地方当局级别

. * Example generated by -dataex-. To install: ssc install dataex
. clear

. input str20(msoa_c msoa_n lac) float income

          msoa_c              msoa_n         lac income
  1. "E02004297" "County Durham 001" "E06000047" 480
  2. "E02004290" "County Durham 002" "E06000047" 540
  3. "E02004298" "County Durham 003" "E06000047" 520
  4. "E02004299" "County Durham 004" "E06000047" 430
  5. "E02004291" "County Durham 005" "E06000047" 400
  6. end

. format income %9.2f

. drop msoa_c msoa_n 

. collapse (mean) mean_inc=income (median) med_inc=income, by(lac)

. list

     +--------------------------------+
     |       lac   mean_inc   med_inc |
     |--------------------------------|
  1. | E06000047     474.00    480.00 |
     +--------------------------------+

. 

由于您的问题不清楚您的目标是生成一份报告(如Nick的报告),还是向地方当局级别的分析迈出第一步,因此下面的代码使用
collapse
获取数据并将其缩减到地方当局级别

. * Example generated by -dataex-. To install: ssc install dataex
. clear

. input str20(msoa_c msoa_n lac) float income

          msoa_c              msoa_n         lac income
  1. "E02004297" "County Durham 001" "E06000047" 480
  2. "E02004290" "County Durham 002" "E06000047" 540
  3. "E02004298" "County Durham 003" "E06000047" 520
  4. "E02004299" "County Durham 004" "E06000047" 430
  5. "E02004291" "County Durham 005" "E06000047" 400
  6. end

. format income %9.2f

. drop msoa_c msoa_n 

. collapse (mean) mean_inc=income (median) med_inc=income, by(lac)

. list

     +--------------------------------+
     |       lac   mean_inc   med_inc |
     |--------------------------------|
  1. | E06000047     474.00    480.00 |
     +--------------------------------+

. 

请参见帮助折叠。你需要的一切都应该在那里。你没有在这里发短信,也没有限制字符数。请避免使用诸如“sth”之类的缩略语和诸如“i”之类的不识字用法。好的问题显示了对代码的一些尝试。请阅读《帮助折叠》。你需要的一切都应该在那里。你没有在这里发短信,也没有限制字符数。请避免使用诸如“sth”之类的缩略语和诸如“i”之类的不识字用法。好的问题显示了对代码的一些尝试。请阅读