楼主: rainsoft
2594 7

[求助]请问进行数据处理谢谢 [推广有奖]

  • 1关注
  • 0粉丝

已卖:231份资源

博士生

74%

还不是VIP/贵宾

-

威望
0
论坛币
97548 个
通用积分
3.5700
学术水平
0 点
热心指数
5 点
信用等级
0 点
经验
11826 点
帖子
139
精华
0
在线时间
534 小时
注册时间
2005-9-26
最后登录
2025-10-13

楼主
rainsoft 发表于 2007-11-6 16:12:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

有一个问题想请教一下:

现在有海量的数据,例如数据格式是这样的

序号  账户    存款时间     存/取款金额  

1       小王    20070216    1800    

2      小郑     20070216     1750  

3       小王    20070318      26500

现在我要对每一个账户进行归类统计,最好每一张账户可以建立一个表,那么该如何进行操作谢谢。

本人愿意重金酬谢

二维码

扫码加我 拉你入群

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

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

关键词:数据处理 数据格式 数据处理 数据分析专题 数据处理 数据分析软件 数据分析报告 面板数据分析 excel数据分析 数据分析方法 项目数据分析

回帖推荐

luijb 发表于3楼  查看完整内容

后来又想了一下,这样似乎更简单些: data a;input id name$ time yymmdd8. cash;cards;1 xiaowang 20070216 18002 xiaozheng 20070216 17503 xiaowang 20070318 26500;run;proc sort data=a;by name;run;data a;set a;by name;if first.name then n+1;run;proc sql noprint;select count(distinct name) into:num from a;quit;%macro luijb;%do i=1 %to #data a&i;set a;drop n;if n=&i then output a&i;run;%end;%men ...

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

data a;input id name$ time yymmdd8. cash;cards;1 xiaowang 20070216 18002 xiaozheng 20070216 17503 xiaowang 20070318 26500;run;proc sql;create table b asselect distinct name from a;quit;data b;set b;n=_n_;run;proc sql noprint;create table a asselect a.*,b.n from a ,b where a.name=b.name;quit;proc sql noprint;select count(distinct name) into:num from a;quit;%macro luijb;%do i=1 %to #data a&i ...

本帖被以下文库推荐

沙发
luijb 在职认证  发表于 2007-11-6 19:52:00

data a;
input id name$ time yymmdd8. cash;
cards;
1 xiaowang 20070216 1800
2 xiaozheng 20070216 1750
3 xiaowang 20070318 26500
;
run;
proc sql;
create table b as
select distinct name from a;
quit;
data b;
set b;
n=_n_;
run;
proc sql noprint;
create table a as
select a.*,b.n from a ,b where a.name=b.name;
quit;
proc sql noprint;
select count(distinct name) into:num from a;
quit;
%macro luijb;
%do i=1 %to #
data a&i;
set a;
drop n;
if n=&i then output a&i;
run;
%end;
%mend luijb;
%luijb;

需要怎么汇总可以接着在macro里接着写啊!~

西格玛临床统计服务工作室http://www.sigma-stat.com/,luijb@163.com

藤椅
luijb 在职认证  发表于 2007-11-7 08:17:00

后来又想了一下,这样似乎更简单些:

data a;
input id name$ time yymmdd8. cash;
cards;
1 xiaowang 20070216 1800
2 xiaozheng 20070216 1750
3 xiaowang 20070318 26500
;
run;
proc sort data=a;
by name;
run;

data a;
set a;
by name;
if first.name then n+1;
run;

proc sql noprint;
select count(distinct name) into:num from a;
quit;
%macro luijb;
%do i=1 %to #
data a&i;
set a;
drop n;
if n=&i then output a&i;
run;
%end;
%mend luijb;
%luijb;

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

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

西格玛临床统计服务工作室http://www.sigma-stat.com/,luijb@163.com

板凳
rain958 发表于 2007-11-7 08:59:00
LZ赶快给钱吧, 哈哈。
select count(distinct name) into:num from a; 这个好强啊 。

报纸
kuhasu 发表于 2007-11-20 04:08:00
[em01][em01][em01]

地板
olover 发表于 2007-11-20 06:55:00

 

 

data temp;
 input name $  withdraw  save ;
 cards;
Xiaowang 300 500
XiaoLi 100 200
XiaoZhang 400 500
XiaoLi 400 30
XiaoZhang 380 230
XiaoLi 440 30
;
run;

/*agrregate the dataset based on name*/
proc univariate data = temp noprint;
 class name;
 var withdraw;
 output out = name;
run;

/*save each customer name into marcro*/
data _null_;
 set name;
 suffix=put(_n_,5.);
 call symput (cats("name",suffix), trim(name));
 call symput ("total", _n_);
run;

/*create dataset for each customer*/
%macro createdata();
 %do i = 1 %to &total;
 data &&name&i;
  set temp;
  if name ne "&&name&i" then delete;
 run;
 %end;

%mend;

%createdata();

[此贴子已经被作者于2007-11-20 6:59:39编辑过]

7
naruto_zw 发表于 2013-5-6 21:20:19
olover 发表于 2007-11-20 06:55
  data temp; input name $  withdraw  save ; cards;Xiaowang 300 5 ...
最近也在做这种练习,不过是在proc sql 过程中创建的宏。看到你的代码也能实现,能请教call symput (cats(" ", ), )这部分是什么意思吗???

8
naruto_zw 发表于 2013-5-6 21:45:00
olover 发表于 2007-11-20 06:55
  data temp; input name $  withdraw  save ; cards;Xiaowang 300 5 ...
终于整明白啥意思了call symput (cats("name",suffix), trim(name));但还想请问为什么这些都要进行去空格处理?

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 12:46