本文作者:崔趙雯,中南財經政法大學金融學院
文字編輯:陳丹慧
技術總編:余術玲
給各位小主請安啦~許久未見突照,我想死你們了~
1.導讀
在之前的推文《xpose和sxpose,誰是臥底》中樊卓,我們?yōu)榇蠹医榻B了在Stata中數據轉置界的兩大“巨星”趴生,今天就再為大家介紹一個它們的升級版命令——sxpose2,讓我們一起來揭開它神秘的面紗吧~2.語法及簡單應用
作為數據轉置的pro版本凶伙,sxpose2可謂是獨當一面郭毕。簡單的說,它與xpose和sxpose的不同之處在于它不僅可以對字符型數據和數值型數據進行轉置函荣,還增加了保留變量名稱和變量標簽的選項显押。
sxpose2是一個外部命令,初次使用需要安裝傻挂,安裝命令為:
ssc install sxpose2
安裝完成后將顯示完成信息:
sxpose2命令的語法結構如下:
sxpose2,clear[options]
選項 | 描述 |
---|---|
clear |
這個選項是必須的乘碑,它是提醒你轉置之后的原始數據將不存在 |
destring |
將字符型數據轉換為數值型數據 |
firstnames |
將現有數據集的第一個變量視為轉置后數據集的新變量名 |
force |
如果數據集中包含數值型變量,需要force選項將數值型變量轉換成字符型變量 |
format(%fmt) |
按照設定的數字顯示格式應用于轉置數據中 |
varlabel |
在轉置后的數據中保留原始數據的變量標簽 |
varname |
在轉置后的數據中保留原始數據的變量名稱 |
下面我們對這些選項舉一些小例子金拒。
①關于varlabel
選項的小例子:
clear all
input str1 id str1 var1 str1 var2
"a" "d" "g"
"b" "e" "h"
"c" "f" "i"
end
label var var1 "VAR-1" //給變量var1賦予標簽VAR-1
label var var2 "VAR-2"
sxpose2, clear firstnames varlabel
list
結果如下:
可以看到兽肤,加上varlabel
選項,轉置后的數據中就保留了原始數據的變量標簽绪抛。
②關于varname
的小例子:
clear all
input id str10 name gender math
1 Jack 1 76
2 Tom 0 36
3 Phillip 1 96
end
label define lgender 0 "男" 1 "女" //給同一變量的不同觀測值賦標簽
label values gender lgender
sxpose2,clear force varname
list
結果如下:
可以看到资铡,通過使用varname
選項,使得轉置后的數據中保留了原始數據的變量名稱幢码。
3.具體實例
通過上述對sxpose2命令選項的介紹笤休,想必大家對sxpose2已經有了初步的了解。下面我們將以長江電力2015年-2019年的一些財務指標為例症副,舉一個sxpose2的簡單應用店雅。
Excel中數據的形式如圖所示政基,我們可以運用sxpose2命令對數據進行轉置,得到我們想要的格式闹啦。
clear all
cap mkdir D:/sxpose2
cd D:/sxpose2
import excel 長江電力財務指標.xlsx //導入excel表格
sxpose2,clear force firstnames destring
list
結果如下:
由于數據中既有字符型數據又有數值型數據负间,我們可以用數據轉置的pro版本——sxpose2命令。同時由于轉置的數據中包含數值型的數據拘鞋,因此需要用force
選項將數值型數據強制轉化為字符型數據杈湾;firstnames
選項可以將原始數據集中的第一個變量視為轉置后新數據集的變量名;destring
選項將force選項轉換后的字符型數據再轉換成數值型數據费变。
那么用xpose命令得到的結果會是什么樣呢摧扇?
clear all
import excel 長江電力財務指標.xlsx
xpose,clear
結果如下:
可以看到,轉置后第一行數據為缺失值挚歧,這是因為xpose只能對數值型數據進行轉置扛稽。
那么使用sxpose命令又會得到什么樣的結果呢?
clear all
import excel 長江電力財務指標.xlsx
sxpose,clear force firstnames destring
結果如下:
可以看到滑负,它與sxpose2運行的結果一致在张,這是因為sxpose的force
選項可以把數值型數據強制轉化為字符型數據,雖然sxpose是對字符型數據進行轉置矮慕,但可以通過force
選項實現對數值型數據的轉置帮匾。
①sxpose2和xpose的區(qū)別在于:xpose只能對數值型數據進行轉置,sxpose2可以對字符型數據和數值型數據進行轉置痴鳄;同時瘟斜,sxpose2在xpose基礎上增加了保留變量標簽的選項。
②sxpose2和sxpose的區(qū)別在于:sxpose2在sxpose的基礎上加入了保留變量名稱和變量標簽的選項痪寻。
以上就是今天的全部內容啦螺句,你對sxpose2這個命令了解了嗎?如果對你有幫助的話橡类,別忘了點個贊呀蛇尚,加個關注咯。