htmllabel水平居中(html水平居中對齊怎么設(shè)置)
split命令-分離字符串變量
Stata中的split命令允許將一個(gè)字符串變量分離為多個(gè)字符串變量。Stata將用分隔符分隔變量。默認(rèn)分隔符是一個(gè)空格字符,但是您可以指定所需的分隔符來充分分割變量。這個(gè)命令對于分離您想要保存在單獨(dú)變量中的一些信息非常有用。
如何使用: 分離變量
split variable
要指定不同的分隔符:
split variable, parse(character)
指定創(chuàng)建的新變量的名稱:
split variable, generate(newvariablename)
根據(jù)您的目標(biāo),該命令還有其他有用的選項(xiàng)。查看帶有命令split的幫助文件,了解有關(guān)可用選項(xiàng)的更多信息。
范例1
在本例中,我將使用Stata示例數(shù)據(jù)集auto.dta。在這個(gè)數(shù)據(jù)集中,有一個(gè)名為make的字符串變量,它包含數(shù)據(jù)集中每輛汽車的品牌和型號(hào)。我想把這分為兩個(gè)變量-一個(gè)包含制造和第二個(gè)包含模型名。這樣做的好處是我可以將make變量轉(zhuǎn)換為類別變量。這樣就可以對汽車進(jìn)行分析,找出汽車制造商造成的差異。
在命令窗格中,我輸入以下命令:
sysuse auto, clear
browse make
這顯示了make變量的原始形式:
展開全文
正如您所看到的,變量包含僅用空格分隔的單詞,因此我們只需要默認(rèn)的空格分隔符。
我現(xiàn)在要拆分并重新排列這個(gè)變量。在命令窗口輸入
split make, generate(model)
drop make
encode model1, generate(make)
generate model = model2 + " "+ model3
drop model1 model2 model3
label variable make "Car Manufacturer"
label variable model "Car Model Name"
order make model
browse make model
browse命令顯示所做的更改:
如您所見,現(xiàn)在制造商和型號(hào)是兩個(gè)獨(dú)立的變量。make變量已被轉(zhuǎn)換為使用encode命令附加標(biāo)簽的類別(數(shù)字)變量。
范例2
在本例中,我們將使用Stata示例數(shù)據(jù)集pop2000.dta。在這個(gè)數(shù)據(jù)集中,有一個(gè)保存為字符串的年齡組變量,稱為agestr。我們要拆分這個(gè)變量我給它起個(gè)名字叫age,它會(huì)生成兩個(gè)變量,分別是age1和age2。這兩個(gè)變量將包含較低和較高的年齡數(shù)。在命令窗格中:
sysuse pop2000.dta, clear
browse agestr
該變量包含年齡范圍,除第一個(gè)之外,每個(gè)年齡范圍都用單詞“to”分隔。因?yàn)槲覀兛梢栽诓鸱置钪刑砑佣鄠€(gè)解析字符串,所以在本例中,我將同時(shí)使用" to "和" Under "來拆分字符串。為了分離這個(gè)字符串變量,我們使用以下命令:
split agestr, parse( "to""Under") generate(age)
browse agestr age1 age2
在這里你可以看到年齡已經(jīng)被成功分離。如果您想將這些轉(zhuǎn)換為數(shù)值變量,可以使用destring命令。例如:
destring age1, replace
destring age2, replace
如果您希望提取一個(gè)不容易被單個(gè)字符或多個(gè)替代字符分離的特定文本序列,那么最好使用Stata功能強(qiáng)大的正則表達(dá)式命令。推薦閱讀: Stata:正則表達(dá)式
掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。