楼主: jiangyangj
2642 4

一个sas变量问题 [推广有奖]

  • 0关注
  • 0粉丝

初中生

76%

还不是VIP/贵宾

-

威望
0
论坛币
292 个
通用积分
0
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
148 点
帖子
10
精华
0
在线时间
18 小时
注册时间
2007-11-13
最后登录
2014-5-5

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

原数据是

000001    ***          *****

000004    ***          *****

000009    ***          ****

……

把他转秩以后变成

  code000001     code000004   code000009          ………………

   ****                        ****                       ****

   ****                         ***                          ***

现在想对这些变量做回归,model里要输的自变量个数太多,手动输入麻烦。

现在的想法是把变量变成code1,code2……,在每个变量的标签里存原来的名称,请问如何实现?

二维码

扫码加我 拉你入群

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

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

关键词:model code 如何实现 mode 变量个数 变量 SAS

回帖推荐

因扎齐 发表于4楼  查看完整内容

刚才无事,就写了这一小段程序,希望能帮到你,只不过还没有考虑_N_>=10,>=100,>=1000的情况。 libname cbdata "C:\HanWork\learn-SAS\";data cbdata.tmp; input x1 x2 x3; x4="code"||put(_N_,$1.); datalines; 98 86 75 86 88 99  99 77 66   ;run;         

sushe1527 发表于2楼  查看完整内容

用最苯的方法弄弄,不要笑我~~不过本人认为变量太多(>60)做回归意义不大滴说~~~看你写code1,code2你意思变量不超过10?按<100个变量说吧,在第一个excel单元格中输入code001然后右拖到你要的变量个数codexxx,备用....然后是数据,若是在编辑状态,直接复制数据到matlab建立矩阵转置,提取数据若是在数据集中提取,先存html,然后粘贴到excel中,然后matlab建立矩阵,提取workspace数据,粘贴到备用的变量下因 ...

本帖被以下文库推荐

沙发
sushe1527 发表于 2007-11-26 21:54:00 |只看作者 |坛友微信交流群

用最苯的方法弄弄,不要笑我~~不过本人认为变量太多(>60)做回归意义不大滴说~~~

看你写code1,code2你意思变量不超过10?按<100个变量说吧,在第一个excel单元格中输入code001

然后右拖到你要的变量个数codexxx,备用....

然后是数据,若是在编辑状态,直接复制数据到matlab建立矩阵转置,提取数据

若是在数据集中提取,先存html,然后粘贴到excel中,然后matlab建立矩阵,提取workspace数据,粘贴到备用的变量下

因为这样的数据处理会保证它格式的对应,很规范.合并一下,大概就这样了

.

.

[此贴子已经被作者于2007-11-26 21:57:11编辑过]

已有 1 人评分经验 收起 理由
bakoll + 10 精彩帖子

总评分: 经验 + 10   查看全部评分

使用道具

藤椅
因扎齐 发表于 2007-11-27 04:15:00 |只看作者 |坛友微信交流群
这个建议你觉得怎样?
在你做转置之前,你和原始数据一起读入另一个变量,例如:就叫“变量名”吧,
它的值就是:第二个是X2,第三个是X3, 这个你可以用程序来实现在DATA STEP。
转置以后你可以用x1,x2..-x300来引用变量名。

使用道具

板凳
因扎齐 发表于 2007-11-27 04:53:00 |只看作者 |坛友微信交流群
刚才无事,就写了这一小段程序,希望能帮到你,只不过还没有考虑
_N_>=10,>=100,>=1000的情况。
 libname cbdata "C:\HanWork\learn-SAS\";
data cbdata.tmp;
 input x1 x2 x3;
 x4="code"||put(_N_,$1.);

 datalines;
 98 86 75
 86 88 99
 99 77 66
   ;
run;         
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 10 精彩帖子

总评分: 经验 + 3  论坛币 + 10   查看全部评分

使用道具

报纸
jiangyangj 发表于 2007-11-27 08:27:00 |只看作者 |坛友微信交流群
谢楼上两位~已经解决了,用的是三楼的方法~

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-26 19:27