- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 不同的数据类型转换
第七章 不同的数据类型转换
本章重点:
在我们处理数据的时候,经常会遇到原始数据的类型不是我们所需要的数据的类型,这就需要我们将原始数据中的一些数据进行转换,从而变成我们可以使用的运算的数据。本章提供了不同类型的数据之间的转换以及数据的格式显示。
7.1 将字符型转化为数值型
将字符型转化为数值型命令为:destring
例 1:destring1数据中的数据全为字符型,转换为数值型
.webuse destring1, clear
.des 如图1
/*注意到所有变量存贮类型(storage type)均为字符型str#,其中#号表示字符串长度*/
.destring, replace //全部转换为数值型,replace 表示将原来的变量(值)更新*/
.des /*如图2,注意到所有变量存贮类型(storage type)均为数值型*/
图2
例2 destring2 数据集中的data 变量为字符型,且年月日间有空格,转移为数据型
.webuse destring2, clear
.des //如图3,注意到所有的变量均为字符型 str
图3
.list date //如图4,注意到date 年月日之间均有空格
图4
.destring date, replace ignore(“ ”) /*忽略空格,然后转换,注意这里的” “中
间有一个空格,不是””。*/
Stata屏幕上显示:date: characters space removed; replaced as long
.des 图5
.list date /*如图6 可以看到空格被去掉
图6
与date 变量类似,变量price 前面有美元符号,变量percent 后有百分号,
换为数值型时需要忽略这些非数值型字符。
.destring price percent, gen(price2 percent2) ignore(“$ ,%”)
.list //如图7,注意到price2 前面的$号消失,percent2 后面的%号消失
图7
.d //如图8,注意到price2 和percent2 均变为数据值型变量double 和byte
图8
7.2 将数值型转化为字符型
将字符型转化为数值型命令为:destring
例3 数据集tostring中的年月日构成一个新的日期变量
.webuse tostring, clear /*该数据中年月日的数据类型不一样,不能直接相加
生成一个反映日期的新变量*/
.des //如图9,注意到month 为字符型,而年和日为数值型,不同类型不能相加构成日期变量
图9
.tostring year day, replace //将年和日转化为字符型
.des //如图10,注意到,现在全部变为字符型
图10
.gen date1=month+”/”+day+”/”+year //将年月日构成一个新的日期变量
.list //图11,生成了一个新的变量date1,其为三个字符串和两个”/”符号连接而成
如图11
.gen date2=date(date1,” MDY”) /* date()为日期函数,它以1960 年1 月1日为第0 天,计算从那天起直到括号中指定的某天date1一共过了多少天。”mdy”指date1 的排列顺序,这里是按照月日年的顺序来表示日期。如图12*/
图12
文档评论(0)