全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
499 0
2022-03-06
SAS小白斗胆分享:
我遇到的问题是:我有将近三千家股票进行分组回归,然后现在我只想要上证180的股票,该怎么做?
法1:可以将需要的上证180代码下载下来,先用word或者txt的替换等功能只留下代码(最好一行一个代码),然后转为excel,第一列就是代码,然后随便再另外设一列假设叫y,这一列值全都记为1或者2或者任意字符或者任意数值。将这个excel然后导入进sas和我们之前的数据集用Merge合并(注意股票要设置为同等位数的字符型),然后用if语句 if y=1 then output 逻辑库.数据集;
法2:原先的数据集的股票名那一列是字符型,先将其变为数值型;
data work.a2;     
set work.a1;
Stkcd1=input(stkcd,6.);
run;

在用if语句选取符合上证180代码的股票;
data work.a3;
set work.a2;
if Stkcd1 in (600000             600009             600010   
  600011             600016             600019   
  600025             600028             600029   
  600030             600031             600036   
  600038             600048             600050   
  600061             600066             600089   
  600104             600109             600111   
  600118             600132             600143   
  600150             600161             600176   
  600183             600196             600276   
  600298             600305             600309   
  600340             600346             600352   
  600362             600383             600406   
  600426             600436             600438   
  600489             600511             600516   
  600519             600521             600522   
  600536             600547             600570   
  600584             600585             600588   
  600598             600600             600606   
  600621             600660             600690   
  600699             600703             600739   
  600741             600745             600760   
  600763             600779             600809   
  600827             600837             600859   
  600862             600867             600872   
  600886             600887             600893   
  600895             600900             600909   
  600918             600919             600926   
  600958             600989             600999   
  601009             601012             601021   
  601066             601088             601099   
  601100             601108             601111   
  601138             601155             601162   
  601166             601169             601186   
  601198             601211             601216   
  601225             601229             601236   
  601238             601288             601318   
  601319             601328             601336   
  601360             601377             601390   
  601398             601456             601555   
  601601             601607             601618   
  601628             601633             601658   
  601668             601669             601688   
  601689             601696             601698   
  601766             601778             601788   
  601800             601816             601818   
  601857             601865             601872   
  601877             601878             601881   
  601888             601899             601901   
  601916             601919             601933   
  601939             601966             601985   
  601988             601989             601990   
  601995             603019             603087   
  603160             603195             603259   
  603288             603369             603392   
  603501             603517             603589   
  603658             603659             603799   
  603806             603833             603882   
  603986             603993             688012   
  688111             688126                 688169 )
then output work.3;
run;


嘻嘻其实我想分享的就是if  XXX in ( 1  3  5 ) then output 逻辑库.数据集;
(因为我苦于这个问题半小时最后解决了嘻嘻快乐!!!)

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群