CSMAR數據庫券商名稱簡寫歸類

券商的名稱在數據庫的記錄中並不統一,很多公司有很多名稱,並不利於統一管理。

本文的程序用於處理CSMAR數據庫中分析師評級數據下券商名稱字段。


/*##############################################################################
*函數名稱:  BankNameSimplify
*函數功能:  簡化券商名稱 具體包括:
                1)剔除非券商公司;2)券商名改爲簡稱 3)默認保留全部變量, 
				增加變量後的新文件駐留內存
             
*函數參數:  1)Broker - 確定數據中券商名稱變量(對應varlist)
*            2)NewBroker - 新的變量名 (對應newvar)
*            3)新文件存放的位置
*函數返回值:無
*
*作者:financexx
*修改記錄
*編號     日期           修改內容
*------------------------------------------------------------------
*1      2015-06-15       1st version
*
*#############################################################################*/
capture program drop BankNameSimplify 
program define BankNameSimplify,rclass
version 14
syntax varname(string) ,generate(string)
*生成新變量
gen `generate' = `varlist'

*Step1:剔除信託、保險、銀行
disp "Step1"
drop if strpos(`generate',"信託")|strpos(`generate',"保險")|strpos(`generate',"銀行")
drop if (strpos(`generate',"資產管理公司")|strpos(`generate',"財務公司")|strpos(`generate',"投資公司")|strpos(`generate',"財務管理")|strpos(`generate',"投資諮詢"))
drop if strpos(`generate',"證券部")
drop if !strpos(`generate',"證券")
disp "Step1 end"
*
*Step2: 簡化證券公司名稱
disp "Step2"
replace `generate' = subinstr(`generate',"經濟特區","",.)
replace `generate' = subinstr(`generate',"證券有限責任公司","證券",.)
replace `generate' = subinstr(`generate',"證券股份有限公司","證券",.)
replace `generate' = subinstr(`generate',"證券股份有限責任公司","證券",.)
replace `generate' = subinstr(`generate',"證券經紀有限責任公司","證券",.)
replace `generate' = subinstr(`generate',"證券有限公司","證券",.)
replace `generate' = subinstr(`generate',"有限證券公司","證券",.)
replace `generate' = subinstr(`generate',"有限股份公司","證券",.)

replace `generate' = subinstr(`generate',"證券研究所有限責任公司","證券",.)
replace `generate' = subinstr(`generate',"證券經紀有限公司","證券",.)
replace `generate' = subinstr(`generate',"證券承銷保薦有限責任公司","證券",.)
replace `generate' = subinstr(`generate',"證券承銷保薦有限公司","證券",.)
replace `generate' = subinstr(`generate',"證券有限公司","證券",.)
replace `generate' = subinstr(`generate',"證券研究所有限責任公司","證券",.)
replace `generate' = subinstr(`generate',"證券經紀有限公司","證券",.)
replace `generate' = subinstr(`generate',"投資資訊有限公司","",.)
replace `generate' = subinstr(`generate',"證券公司","證券",.)
replace `generate' = subinstr(`generate',"股份有限公司","",.)
replace `generate' = subinstr(`generate',"(集團)","",.)
replace `generate' = subinstr(`generate',"(集團)","",.)
*
*Step 3: 簡化地域名稱
replace `generate' = subinstr(`generate',"省證券","證券",.)
replace `generate' = subinstr(`generate',"市證券","證券",.)
replace `generate' = subinstr(`generate',"寧夏回族自治區","寧夏",.)
replace `generate' = subinstr(`generate',"新疆維吾爾自治區","新疆",.)
replace `generate' = subinstr(`generate',"內蒙古自治區","內蒙古",.)
replace `generate' = subinstr(`generate',"廣西壯族自治區","廣西",.)
*Step 4: 去除不必要地域名稱 以及根據習慣簡寫
replace `generate' = "萬國證券" if `generate' == "上海萬國證券"
replace `generate' = "海通證券" if `generate' == "上海海通證券"
replace `generate' = "申銀證券" if `generate' == "上海申銀證券"
replace `generate' = "羣益證券" if index(`generate',"羣益證券")
replace `generate' = "中金公司" if `generate' == "中國國際金融有限公司"
replace `generate' = "中金公司" if `generate' =="中國國際金融香港證券"
replace `generate' = "中國建投" if `generate' == "中國建銀投資有限責任公司"|`generate' =="中國建銀投資證券"
replace `generate' = "中銀國際" if `generate' =="中國銀行國際證券公司"|`generate' =="中銀國際證券"
replace `generate' = "科技證券" if `generate' == "中國科技證券"
replace `generate' = "民族證券" if `generate' == "中國民族證券"
replace `generate' = "銀河證券" if `generate' == "中國銀河證券"
replace `generate' = "中投證券" if `generate' == "中國中投證券"
replace `generate' = "南方證券" if `generate' == "中國南方證券"
replace `generate' = "國泰證券" if `generate' == "中國國泰證券"
replace `generate' = "廣發證券" if `generate' == "廣東廣發證券"
replace `generate' = "金信證券" if `generate' == "上海金信證券"
replace `generate' = "遠東證券" if `generate' == "上海遠東證券"
replace `generate' = "財達證券" if `generate' == "河北財達證券"
replace `generate' = "北京高華" if `generate' == "北京高華證券"
replace `generate' = "第一創業" if `generate' == "第一創業證券"
replace `generate' = "第一上海" if `generate' == "第一上海證券"
replace `generate' = "廣發華福" if `generate' == "廣發華福證券"
replace `generate' = "華泰聯合" if `generate' == "華泰聯合證券"
replace `generate' = "申銀萬國" if `generate' == "申銀萬國證券"
replace `generate' = "中信建投" if `generate' == "中信建投證券"
replace `generate' = "中信金通" if `generate' == "中信金通證券"
replace `generate' = "國泰君安" if `generate' == "國泰君安證券"
replace `generate' = "財富證券" if `generate' == "財富里昂證券"
replace `generate' = "興業證券" if `generate' == "福建興業證券"
replace `generate' = "華福證券" if `generate' == "福建省華福證券"
replace `generate' = "閩發證券" if `generate' == "福建省閩發證券"
replace `generate' = "國投證券" if `generate' == "深圳國投證券"
replace `generate' = "國投證券" if `generate' == "深圳國投證券營業部"
replace `generate' = "國泰證券" if `generate' == "深圳國泰證券"
replace `generate' = "有價證券" if `generate' == "重慶有價證券"
replace `generate' = "申銀萬國證券" if `generate' == "上海申銀萬國證券"
replace `generate' = "天風證券" if `generate' == "四川省天風證券"
replace `generate' = "北方證券" if `generate' == "瀋陽北方證券"
replace `generate' = "萬通證券" if `generate' == "青島萬通證券"
*
*Step 5:將過長的公司去掉證券二字
replace `generate' = subinstr(`generate',"證券","",.) if strlen(`generate')>=18
end 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章