Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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
Stata 在多个层中重塑宽_Stata - Fatal编程技术网

Stata 在多个层中重塑宽

Stata 在多个层中重塑宽,stata,Stata,我有一个数据集,它应该被重塑成一个广泛的格式 目前的数据很长,通过观察确定了特定学校每个人的“区域”。因为数据有两层,所以传统的重塑代码出现了问题:首先,数据应该被重塑得很宽,以便每个观察都能唯一地识别一个人和一所学校(有多个区域)。第二,我们最终应该对每个人进行一次观察(包括多个学校和多个地区) 下面是一个示例,展示了数据现在的样子: * Example generated by -dataex-. To install: ssc install dataex clear input str

我有一个数据集,它应该被重塑成一个广泛的格式

目前的数据很长,通过观察确定了特定学校每个人的“区域”。因为数据有两层,所以传统的重塑代码出现了问题:首先,数据应该被重塑得很宽,以便每个观察都能唯一地识别一个人和一所学校(有多个区域)。第二,我们最终应该对每个人进行一次观察(包括多个学校和多个地区)

下面是一个示例,展示了数据现在的样子:

 * Example generated by -dataex-. To install: ssc install dataex
clear
input str4 id str2 school_code str1 area
"a111" "1x" "a"
"a111" "1x" "b"
"a111" "1x" "c"
"a111" "1y" "a"
"a111" "1y" "b"
"a111" "1y" "c"
"x222" "1z" "d"
"x222" "1z" "e"
"x222" "1z" "f"
"x222" "1k" "g"
"x222" "1k" "h"
"x222" "1k" "i"
end
下面是一个我想要的数据集的暂定示例:

 * Example generated by -dataex-. To install: ssc install dataex
clear
input str4 id str2(school_code_1 school_code_2) str1(school1_area1 school1_area2 school1_area3 school2_area1 school2_area2 school2_area3)
"a111" "1x" "1y" "a" "b" "c" "a" "b" "c"
"x222" "1z" "1k" "d" "e" "f" "g" "h" "i"
end

感谢使用
dataex
(SSC)的数据示例

当您注意到可能需要创建新标识符的提示时,这是一个标准的
重塑

clear
input str4 id str2 school_code str1 area
"a111" "1x" "a"
"a111" "1x" "b"
"a111" "1x" "c"
"a111" "1y" "a"
"a111" "1y" "b"
"a111" "1y" "c"
"x222" "1z" "d"
"x222" "1z" "e"
"x222" "1z" "f"
"x222" "1k" "g"
"x222" "1k" "h"
"x222" "1k" "i"
end

sort id, stable 
by id: gen j = _n 
reshape wide school_code area, i(id) j(j) 

list 
这就产生了你的要求

尽管如此,很难想象这种改变的结构会使以后的Stata处理比原始数据结构更容易。此外,不同的新变量按任意变量名分组。如果您所在的学校和地区的顺序不同,那么最后出现在
*1*2*3
中的内容也会有所不同


小术语点:“格式”一词在计算中负担过重,包括(至少)文件格式、显示格式、数据结构和数据(存储)类型,就任何特定软件的正式术语而言,无论正确与否。在Stata上下文中,有一个
格式
命令作为显示格式的主要含义。文件格式也有一个正式的概念(例如)。因此,尽管模糊性很少持续很长时间,但我建议在这里谈论数据布局或结构(尽管后一个术语也过载…)

感谢使用
dataex
(SSC)的数据示例

当您注意到可能需要创建新标识符的提示时,这是一个标准的
重塑

clear
input str4 id str2 school_code str1 area
"a111" "1x" "a"
"a111" "1x" "b"
"a111" "1x" "c"
"a111" "1y" "a"
"a111" "1y" "b"
"a111" "1y" "c"
"x222" "1z" "d"
"x222" "1z" "e"
"x222" "1z" "f"
"x222" "1k" "g"
"x222" "1k" "h"
"x222" "1k" "i"
end

sort id, stable 
by id: gen j = _n 
reshape wide school_code area, i(id) j(j) 

list 
这就产生了你的要求

尽管如此,很难想象这种改变的结构会使以后的Stata处理比原始数据结构更容易。此外,不同的新变量按任意变量名分组。如果您所在的学校和地区的顺序不同,那么最后出现在
*1*2*3
中的内容也会有所不同

小术语点:“格式”一词在计算中负担过重,包括(至少)文件格式、显示格式、数据结构和数据(存储)类型,就任何特定软件的正式术语而言,无论正确与否。在Stata上下文中,有一个
格式
命令作为显示格式的主要含义。文件格式也有一个正式的概念(例如)。因此,尽管模糊性很少持续很长时间,但我建议在这里谈论数据布局或结构(尽管后一个术语也过载…)