有时候,你的数据集中有一个变量表面上是数值型变量(因为变量有数值),但实际上为字符型变量。由于对字符型变量不能作更多的统计分析,此时,就需要把字符型变量转化为数值型变量。看下面的数据集:data list list / id * name (A5) score (A5) gender (A2).begin data1 "Beth" "57" "f"2 "Bob" "65" "m"3 "Barb" "70" "f"4 "Andy" "45" "m"5 "Al" "80" "m"6 "Ann" "81" "f"7 "Pete" "66" "m"8 "Pam" "60" "f"9 "Phil" "70" "m"end data. 字符型变量是不能计算均数,标准差等统计指标的。不过有几种方法可以把字符型变量转化为数值型变量。一种方法就是使用带有计算命令的数值函数,这时需要用计算命令创建一个新变量。此时需要定义字符型变量的名称和新数值变量的格式。compute score1 = number(score, F2).execute.数值变量赋值后,就可以计算描述性统计量了。desc var = score1.Descriptive Statistics NMinimumMaximumMeanStd. DeviationSCORE1945.0081.0066.000011.24722Valid N (listwise)9 另一种方法就是采用重新编码命令的转换功能将字符的象征性数值转化为一个数值变量。recode score (convert) into score2.execute. 在一些情况下,你也可以把字符型变量中的非数值符号用数值来代替。使用下面的命令就可以将它们转化为数值。recode score ('? ' = -9) (convert) ('-' = 11) ('&' = 12) into newvar1.execute. 如果字符变量取值不多,可以采用重新编码命令创建一个新的数值变量。下面我们就把gender这个字符型变量转化为数值变量。
温馨提示:答案为网友推荐,仅供参考