全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1932 9
2015-11-28
悬赏 100 个论坛币 已解决
帮忙看看  这个数据     源数据有很多观测    下面的程序有的能够给出正确的处理后的格式    有的不可以  如test中的这个观测就是这个样   不能够区分出人名


data institution1(drop = tmp_name i name_count);
  set test1;

  tmp_name = researcher;

  name_count = countw(tmp_name, "、");

  do i = 1 to name_count;
    researcher = scan(tmp_name, i, "、");
                output;
  end;

run;

test1.zip

大小:3.97 KB

 马上下载

本附件包括:

  • test1.sas7bdat

最佳答案

banishurface 查看完整内容

不是的,是sas对顿号这个符号的识别不正常,所以那个语句是把所有的顿号换成了逗号,这样sas识别就正常了。你试过那段代码了吗?
二维码

扫码加我 拉你入群

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

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

全部回复
2015-11-28 09:40:13
小鳄鱼a 发表于 2015-11-28 22:17
你的意思是有两个分隔符吗
不是的,是sas对顿号这个符号的识别不正常,所以那个语句是把所有的顿号换成了逗号,这样sas识别就正常了。你试过那段代码了吗?
二维码

扫码加我 拉你入群

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

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

2015-11-28 10:32:54
你是想要达到怎样的效果呢
二维码

扫码加我 拉你入群

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

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

2015-11-28 10:56:07
banishurface 发表于 2015-11-28 10:32
你是想要达到怎样的效果呢
把人名正确的区分开来就可以了
二维码

扫码加我 拉你入群

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

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

2015-11-28 11:22:01
试试这个能否实现你想要的

data institution1(drop = tmp_name i name_count);
  set Test1;

  tmp_name = tranwrd(researcher,'、',',');

  name_count = count(tmp_name,',')+1;

  do i = 1 to name_count;
    researcher = scan(tmp_name,i,',');
  output;
  end;

run;
二维码

扫码加我 拉你入群

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

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

2015-11-28 18:25:45
遇到汉字时,应该用k族前缀

因为汉字占两个字符单位,这个、符号很可能会被识别为某两个汉字的 后一半+前一半
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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