楼主: joney00
9731 5

[问答] SAS提取字符串 [推广有奖]

  • 0关注
  • 0粉丝

已卖:56份资源

本科生

11%

还不是VIP/贵宾

-

威望
0
论坛币
350 个
通用积分
7.7907
学术水平
3 点
热心指数
3 点
信用等级
3 点
经验
3104 点
帖子
41
精华
0
在线时间
105 小时
注册时间
2011-9-26
最后登录
2025-4-3

楼主
joney00 发表于 2012-12-18 17:42:56 |AI写论文
5论坛币
data1.xls (13.5 KB) 原始数据是这样,变量只有一个字符型变量,其中变量由许多名字连在一起,仅用逗号隔开。原始数据有很多行,这里限于篇幅只列出一些行
数据在附件里。
想得到这样结果,仍然保留变量不变,但新增加name_1, name_2, .....变量,这些新生成的变量是由原来连在一起的name变量拆分后的每个名字。

不知讲清楚了没有,实在想不出来,请高手帮忙。


最佳答案

webgu 查看完整内容

没有一个其它id 变量控制吗?所有的一起转?一般会一行拆开一下。
关键词:字符串 字符型变量 name 原始数据 在一起 字符串

回帖推荐

webgu 发表于5楼  查看完整内容

没有一个其它id 变量控制吗?所有的一起转?一般会一行拆开一下。

沙发
webgu 发表于 2012-12-18 17:42:57
没有一个其它id 变量控制吗?所有的一起转?一般会一行拆开一下。
  1. data demo;
  2. length name $ 100;
  3. input id  name $;
  4. datalines;
  5. 1 朱勇,雷轩武
  6. 2 汪伟,张可欣,穆周
  7. 3 李龙,王祁
  8. 4 周新玉,袁峻崇,左英
  9. 5 张志鹏,吴正武,侯思佳,张庆
  10. 6 乐洋,陈晨,林裕闲,詹红兵,杨少家
  11. 7 吕静玉,刘华,陈戊龙,刘旭阳
  12. 8 朱勇,雷轩武
  13. 9 汪伟,张可欣,穆周
  14. 10 李龙,王祁
  15. 11 周新玉,袁峻崇,左英
  16. 12 张志鹏,吴正武,侯思佳,张庆
  17. 13 乐洋,陈晨,林裕闲,詹红兵,杨少家
  18. 14 吕静玉,刘华,陈戊龙,刘旭阳
  19. ;

  20. data tmp;
  21.    set demo;
  22. i=1;
  23. do while (kscan(name,i,',' )^='');
  24.    subname=kscan(name,i,',');
  25.   output;
  26.    i+1;
  27. end;
  28. run;

  29. proc transpose data=tmp  out=want (drop=_name_) prefix=name;
  30.   var subname;
  31.   by id;
  32. run;
复制代码
已有 1 人评分学术水平 热心指数 收起 理由
李会超 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 1   查看全部评分

SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

藤椅
iamzhuji 发表于 2012-12-18 17:59:28
这个用EXCEL处理更方便吧,如果你的原文件是TXT或CSV,则在EXCEL中新建一空白文档,数据-获取外部数据-自文本,分隔符号选择其他,根据你的实际分隔情况填入就行了

板凳
老师她摸我 发表于 2012-12-18 18:15:09
以下只是5个变量的情况
  1. data test2;
  2.         set test1;
  3.         array newname {*} $ name_1-name_5;
  4.         i=1;
  5.         do until(scan(name,i,',')=' ');
  6.                 newname{i}=scan(name,i,',');
  7.                 i+1;
  8.         end;
  9.         output;
  10.         drop name i;
  11. run;       
复制代码
已有 1 人评分学术水平 收起 理由
李会超 + 1 热心帮助其他会员

总评分: 学术水平 + 1   查看全部评分

欢迎加入SAS群:144839730-蜗牛

报纸
ziyenano 发表于 2012-12-18 18:26:04
老师她摸我 发表于 2012-12-18 18:15
以下只是5个变量的情况
处理中文,还是换成kscan

地板
2010yangxiujuan 发表于 2014-10-31 17:05:59
老师她摸我 发表于 2012-12-18 18:15
以下只是5个变量的情况
高手!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 12:38