楼主: jjltcfa
2413 9

[问答] 求助,数据处理问题 [推广有奖]

  • 6关注
  • 1粉丝

本科生

16%

还不是VIP/贵宾

-

TA的文库  其他...

sAs of K

威望
0
论坛币
664 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
809 点
帖子
70
精华
0
在线时间
73 小时
注册时间
2011-12-1
最后登录
2017-9-27

楼主
jjltcfa 发表于 2013-7-12 15:04:43 |AI写论文
100论坛币

三个变量num type$ total

具体数据为下表  

1321321978010  m            500000

1321321978010  m            500000

1321321978010  m            500000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000

1304041972120  per        300000

1304041972120  per        300000

1304041972120  per        300000

1304041972120  per        300000

1304211977071  per        400000

1304211977071  per        400000

1304211977071  per        400000

想法对typeper 的数据进行操作

如果typeper的数据的num typem的数据的num一致,则保留

此条typerper的数据,否则将typeper的数据删除。

Typem的数据全部保留。 以上的例子仅为很小一部分,处理的数据会有很多的

M和很多的PER.


以上例子的想象结果应为

1321321978010  m            500000

1321321978010  m            500000

1321321978010  m            500000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000


SAS 新手,请大家帮忙 先谢谢了。 大家辛苦


最佳答案

pobel 查看完整内容

如果type只有m和per的话: proc sql; create table b as select distinct * from a where num in (select distinct num from a where type="m"); quit;
关键词:数据处理问题 数据处理 Total type NUM SAS 数据分析专题 数据处理 数据分析软件 数据分析报告 面板数据分析 excel数据分析 数据分析方法 项目数据分析

沙发
pobel 在职认证  发表于 2013-7-12 15:04:44
如果type只有m和per的话:
proc sql;
   create table b as
     select distinct * from a
         where num in (select distinct num from a where type="m");
quit;
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
jjltcfa + 1 + 1 + 1 热心帮助其他会员

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

和谐拯救危机

藤椅
jjltcfa 发表于 2013-7-12 15:08:30
在线等 多谢啦

板凳
美髯客 发表于 2013-7-12 15:24:51
SAS不会,不过可以使用Excel预处理!

报纸
slimdell 发表于 2013-7-12 15:42:21
思路上先subset数据,把type = m 和type =per的数据分开,然后SQL或者其它方式处理两个dataset, per中仅保留在num在m中出现的obs, 再set回去就可以了
知乎专栏/微信公号同名:煮酒烹茶读书

地板
jjltcfa 发表于 2013-7-12 16:06:53
pobel 发表于 2013-7-12 15:47
如果type只有m和per的话:
proc sql;
   create table b as
技术太高超了,真的是十分的感谢,这么快就解决了我纠结了2个小时的问题。。佩服佩服。刚刚开始接触SAS,所以非常需要论坛的各位高手指导。再次感谢你。

7
jjltcfa 发表于 2013-7-12 16:27:19
slimdell 发表于 2013-7-12 15:42
思路上先subset数据,把type = m 和type =per的数据分开,然后SQL或者其它方式处理两个dataset, per中仅保 ...
也谢谢你的帮忙, 只是我的基础有些薄弱,没有办法将你的思路落实,SAS新手 lol。等以后基础扎实了再回来试试看用你提供的设计来解决类似的问题,还是很感谢你的帮忙。

8
jjltcfa 发表于 2013-7-12 16:29:31
美髯客 发表于 2013-7-12 15:24
SAS不会,不过可以使用Excel预处理!
EXCEL对我来说也是一片迷茫,很少用EXCEL处理数据 lol。 谢谢你提供的想法,以后会多注意EXCEL的操作,如果在导入SAS前在EXCEL已经将数据进行一定程度的整理确实是一个提高效率的好方法。感谢。

9
美髯客 发表于 2013-7-12 17:23:33
其实了解一些常用函数,再利用网络还是很快掌握的!

10
jjltcfa 发表于 2013-7-12 17:27:53
美髯客 发表于 2013-7-12 17:23
其实了解一些常用函数,再利用网络还是很快掌握的!
确实有道理,感觉东西太多学不过来了 lol

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

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