本站分享:AI、大数据、数据分析师培训认证考试,包括:Python培训Excel培训Matlab培训SPSS培训SAS培训R语言培训Hadoop培训Amos培训Stata培训Eviews培训

stata-数据预处理 _数据预处理_STATA数据库维护

stata培训 cdadata 6511℃
stata-数据预处理 _数据预处理_STATA数据库维护
关键词:数据预处理,数据预处理方法,数据挖掘 数据预处理
命令 1:su 变量名      (可以多个变量:即:su 变量名 1  变量名 2  … 变量名 m) 
命令 2:su 变量名,d    (可以多个变量:即:su 变量名 1  变量名 2  … 变量名 m,d) 
tab
很好用的命令。 可以处理分类变量相关的问题,如var1 表示性别,var2表示收入,研究男性和女性在平均收入上的差别,可用:tabulate var1, summ(var2)
tabulate 的用法很多,可以使用help tabulate 命令来查询。与tabulate相似的命令有table。(摘自 邹伟川 CCER04)
centile
summarize
tabstat
正态检验:sktest varname
swilk varname
p值越小,越有可能不服从正态分布;
anova命令: anova y x1 x2
anova 做方差分析(analysis of variance),研究y的平均值在分类变量x1 和x2不同取值之间的差异。
ttest 命令
correlate :计算两变量的相关系数
计算百分位数还可以用专用命令 centile。 
centile 变量名(可以多个变量),centile(要计算的百分位数) 例如计算 P2.5,P97.5 等 
centile 变量名,centile(2.5  97.5) 
本例计算 P2.5,P97.5,P50,P25,P75。 
本例命令. centile x,centile(2.5 25 50 75 97.5)

排序
SORT 变量名1 变量名2 ……

变量更名
rename 原变量名 新变量名

删除变量或记录
drop x1 x2          /* 删除变量x1和x2
drop x1-x5          /* 删除数据库中介于x1和x5间的所有变量(包括x1和x5)
drop if x<0         /* 删去x1<0的所有记录
drop in 10/12      /* 删去第10~12个记录
drop if x==.        /* 删去x为缺失值的所有记录
drop if x==.|y==.  /* 删去x或y之一为缺失值的所有记录
drop if x==.&y==.  /* 删去x和y同时为缺失值的所有记录
drop _all           /* 删掉数据库中所有变量和数据

STATA的变量赋值
用generate产生新变量
generate 新变量=表达式
generate bh=_n                          /*  将数据库的内部编号赋给变量bh。
generate group=int((_n-1)/5)+1     /*  按当前数据库的顺序,依次产生5个1,5个2,5个 3……。直到数据库结束。
generate block=mod(_n,6)        /*  按当前数据库的顺序,依次产生1,2,3,4,5,0。
generate y=log(x) if x>0              /*  产生新变量y,其值为所有x>0的对数值log(x),当x<=0时,用缺失值代替。
egen产生新变量

set obs 12
egen a=seq()           /*产生1到N的自然数
egen b=seq(),b(3)   /*产生一个序列,每个元素重复#次
egen c=seq(),to(4)  /*产生多个序列,每个序列从1到#
egen d=seq(),f(4)t(6) /*产生多个序列,每个序列从#1到#2

encode  字符变量名,gen(新数值变量名)
作用:将字符型变量转化为数值变量。
STATA数据库的维护
保留变量或记录
keep in 10/20       /* 保留第10~20个记录,其余记录删除
keep x1-x5       /* 保留数据库中介于x1和x5间的所有变量(包括x1和x5),其余变量删除
keep if x>0         /* 保留x>0的所有记录,其余记录删除
STATA数据库的维护
替换已存在的变量值
replace  变量=表达式
replace  bolck=6 if block==0       /*  将block=0的数全部替换为6。
replace  z=. if z<0             /*  将所有小于0的z值用缺失值代替。
replace age = 25 in 17      /*  将第17条记录中的变量age替换为25。
for var x* : replace X=0 if X==.  /*  将所有第一个字母为x的变量替换为0,如果该变量的值为缺失值

转载请注明:数据分析 » stata-数据预处理 _数据预处理_STATA数据库维护

喜欢 (1)or分享 (0)