#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 | --------------------------------------