Как изменить форму определенного набора данных с длинного на широкий без переменной J в Stata?

#stata #stata-macros #readstata13

Вопрос:

Мой набор данных выглядит следующим образом:

идентификационный номер год показатель Данные
1112000 2000 JKL_ADS 511
1112001 2001 JKL_ADS 517
1112002 2002 JKL_ADS 721
1112003 2003 JKL_ADS 925
1112004 2004 JKL_ADS 1092
1112000 2000 KLS_DSAK 351
1112001 2001 KLS_DSAK 631
1112002 2002 KLS_DSAK 732
1112003 2003 KLS_DSAK 823
1112004 2004 KLS_DSAK 1092

Я хочу изменить форму пошире, чтобы вместо этого это выглядело так:

идентификационный номер год JKL_ADS KLS_DSAK
1112000 2000 511 351
1112001 2001 517 631
1112002 2002 721 732
1112003 2003 925 823
1112004 2004 1092 1092

Ответ №1:

Это довольно стандартное приложение. Вы не привели примерные данные в рекомендуемой форме, поэтому приведенные здесь сведения могут потребовать от вас внесения изменений.

Вопреки вопросу, indicator служит аргументом для j() .

 * Example generated by -dataex-. For more info, type help dataex clear input long identificationnumber int year str8 indicator int data 1112000 2000 "JKL_ADS" 511 1112001 2001 "JKL_ADS" 517 1112002 2002 "JKL_ADS" 721 1112003 2003 "JKL_ADS" 925 1112004 2004 "JKL_ADS" 1092 1112000 2000 "KLS_DSAK" 351 1112001 2001 "KLS_DSAK" 631 1112002 2002 "KLS_DSAK" 732 1112003 2003 "KLS_DSAK" 823 1112004 2004 "KLS_DSAK" 1092 end  . reshape wide data , i(id year) j(indicator) string (j = JKL_ADS KLS_DSAK)  Data Long -gt; Wide ----------------------------------------------------------------------------- Number of observations 10 -gt; 5  Number of variables 4 -gt; 4  j variable (2 values) indicator -gt; (dropped) xij variables:  data -gt; dataJKL_ADS dataKLS_DSAK -----------------------------------------------------------------------------  . rename (data*) (*)  . l    --------------------------------------   | identi~r year JKL_ADS KLS_DSAK |  |--------------------------------------|  1. | 1112000 2000 511 351 |  2. | 1112001 2001 517 631 |  3. | 1112002 2002 721 732 |  4. | 1112003 2003 925 823 |  5. | 1112004 2004 1092 1092 |   --------------------------------------