在stata中将宽改为长,但新变量包含所有缺少的值

在stata中将宽改为长,但新变量包含所有缺少的值,stata,reshape,Stata,Reshape,我需要重塑一个数据集,其原始形式如下: schid m2s1q0_i m2s1q0_ii ... m2s1q0_x 1 6 2 3 我想将其重塑为长格式,如下所示: schid teacher_id 1 5 1 2 ... 1 3 我使用了以下代码: reshape long m2s1q0_, i(schoolid) j(teac

我需要重塑一个数据集,其原始形式如下:

schid     m2s1q0_i     m2s1q0_ii    ...     m2s1q0_x
1            6            2                   3
我想
将其重塑为长格式,如下所示:

schid teacher_id
1        5
1        2
...      
1       3
我使用了以下代码:

reshape long m2s1q0_, i(schoolid) j(teacher_id)

但是,
teacher\u id
变量全部丢失。哪里出错了?

如果使用选项
string
教师ID将作为字符串变量生成,而不是丢失。然后可以使用
encode
为teacher\u id变量创建数值

以下是一个例子:

clear
set obs 10
gen schid = _n
gen m_i = 1
gen m_ii = 2
gen m_iii = 3
reshape long m_, i(schid) j(teacher_id) string
encode teacher_id, gen(teacher_id2)

如果使用选项
string
教师ID将作为字符串变量生成,而不是丢失。然后可以使用
encode
为teacher\u id变量创建数值

以下是一个例子:

clear
set obs 10
gen schid = _n
gen m_i = 1
gen m_ii = 2
gen m_iii = 3
reshape long m_, i(schid) j(teacher_id) string
encode teacher_id, gen(teacher_id2)

帮助重塑
中,有一个选项字符串从
帮助重塑
中,有一个选项字符串