pythonstringvar类型转成string_数据类型转换之destring和
tos。。。
导读Stata中通常把变量分为三类,分别为数值型、字符型和⽇期型。在进⾏⼀些数据整理的过程中,我们可能会需要把字符型的变量转换为数值型,或者将数值型的变量转换为字符型。这时destring和tostring命令就可以帮助我们实现数据类型转换。接下来我们就⼀起看⼀下吧~
⼀、destring——将字符型变量转换为数值型变量destring的命令语句如下:destring [varlist] , {generate(newvarlist)|replace} [destring_options]varlist是指需要进⾏变量类型转换的变量,generate (newvarlist)表⽰可以把转换后的数据⽣成⼀列新的变量,这⾥也可以⽤replace选项直接将原始数据类型替换为转换后的数据类型。同时destring命令还有很多其它的选项,如ignore、force、float、percent、dpcomma。ignore("chars" [, ignoreopts])表⽰删除指定的⾮数字字符,字符或字节,以及⾮法的Unicode字符;force表⽰把⾮数值型字符串转换为缺失值;float表⽰⽣成浮点型的数值变量;percent表⽰将百分⽐形式的变量转换为⼩数形式;dpcomma表⽰将逗号作为⼩数转换为句点⼗进制格式。接下来举⼀个简单的例⼦来说明destring命令的⽤法。⾸先我们⽤input命令⼿动⽣成数据,并查看数据集的信息。clear all
input str3 id str3 price str4 mpg str14 date str3 percent
001 4000 18 "1999 12 10" "%21"
002 3710 22 "2000 10 30" "%35"
003 5325 15 "1998 06 15" "%23"
004 4082 16 "2001 07 19" "%21"
end
describe
list
从数据集的信息可以看出当前变量的存贮类型都为字符型,这时我们不能对变量进⾏描述性统计或数值计算。因此,这时如果想对数据中的变量进⾏描述性统计或数值计算,就需要将数据集中的字符型变量转换为数值型变量。这⾥我们⽤destring命令进⾏转换,并替换掉原始变量。destring,replace
从图中可以看出,id、price、mpg变量已经由字符型转换为数值型,⽽date和percent变量显⽰变量中存在⾮数值型变量,没有进⾏转换。那我们要怎么对这两列变量进⾏转换呢?这时候destring命令的⼀些其它选项就发挥作⽤了。我们⽤destring的ignore选项来忽略date变量中的空格并进⾏变量类型转换;⽤destring的percent选项将percent这列变量由百分⽐形式转换为⼩数形式,并进⾏变量类型转换。destring date,replace ignore(" ")
destring percent,replace percent
describe
c++string类型list date percent
从图中可以看出,date和percent变量由字符型转换为了数值型,且date变量中的空格消失了;percent变量也由百分⽐形式变为了⼩数形式。
⼆、tostring——将数值型变量转换为字符型变量tostring的命令语句如下:tostring varlist , {generate(newvarlist)|replace}
[tostring_options]其中varlist、generate(newvarlist)、replace等与上述destring命令中的选项含义类似,这⾥就不再进⾏说明。同时tostring命令也还有很多其它的选项,如force、format、usedisplayfor
mat。force表⽰强制转换,忽视信息丢失;format表⽰使⽤指定格式转换;usedisplayformat表⽰使⽤显⽰格式转换。接下来以⼀个例⼦来说明tostring命令的⽤法。⾸先⽣成⼀些数据,并查看数据集的信息。clear all
input str9 name str3 month day year
Jack jan 20 2000
Merry may 15 2001
Tony apr 5 2001
Peter jul 16 2000
end
describe
从显⽰的数据集信息中可以看出,name和month变量为字符型变量,⽽day和year变量为数值型变量。我们⽤list命令看⼀下已有的数据。
这时,如果想新⽣成⼀个变量为month、day、year三个变量相加,就会发现因为month是字符型变量,day和year是数值型变量,不能进⾏相加。这时我们就需要把数值型变量转换为字符型变量,来⽣成新的变量。我们⽤tostring命令对year和day这两个变量的类型进⾏转换,并查看数据集信息。tostring year
day, replace
describe
可以看出现在day和year变量由数值型转换为了字符型。现在我们就可以⽣成⼀个新的⽇期变量为month、day和year相加的变量。gen date1 = month+"/"+day+"/"+year
list
转换后的变量相加就可以成功⽣成新变量了。以上就是本⽂对destring和tostring命令的介绍了。在实际操作中,⼤家可以根据⾃⼰的需要来对数据类型进⾏转换~
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论