Вы неправильно ссылаетесь на r(N_1)
и r(N_2)
как r(N 1)
и r(N 2)
соответственно.
В примере с игрушкой, представленном в предыдущем посте, я исправил эту ошибку и вставил шестьдополнительные строки в полужирный , которые достигают того, что вы хотите:
sysuse auto, clear
<b>local i = 0</b>
foreach v of var mpg price weight length displacement {
<b>local ++i</b>
quietly ranksum `v', by(foreign) porder
scalar pval = 2*normprob(-abs(r(z)))
<b>
if `i' == 1 {
display %20s "P-Value", %5s "PValue2", %5s "Porder1", %5s "group 1", %5s "group 2"
display ""
}</b>
display "`v'{col 14}" %05.3f pval " " %6.4e pval " " %05.3f r(porder) ///
" " %05.3f r(N_1) " " %05.3f r(N_2)
}
Первая команда display
действует как заголовок, но вам придется поиграть со значениями, чтобы получить желаемыйрасстояние.Вторая просто добавляет пустую строку.
Макрос счетчика i
служит для display
заголовка и пустых строк только на первом шаге цикла for
вместо того, чтобы повторяться для каждой переменной.
Результаты показаны ниже:
P-Value PValue2 Porder1 group 1 group 2
mpg 0.002 1.9e-03 0.271 52.000 22.000
price 0.298 3.0e-01 0.423 52.000 22.000
weight 0.000 3.8e-07 0.875 52.000 22.000
length 0.000 9.4e-07 0.862 52.000 22.000
displacement 0.000 1.1e-08 0.921 52.000 22.000
Для получения дополнительной информации о форматировании вывода с помощью команды display
введите help format
в командной строке Stata.