经管之家App
让优质教育人人可得
立即打开
全部版块
我的主页
›
论坛
›
数据科学与人工智能
›
数据分析与数据科学
›
SAS专版
SAS数据集处理
楼主
qnsz
6051
17
收藏
2011-07-05
需要将一个文件里面的所有数据,减去另一个文件中的一行数据,再取绝对值生成新的数据,求代码!O(∩_∩)O谢谢
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
全部回复
沙发
nomad5
2011-7-5 13:24:47
我是没看明白什么意思……
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
藤椅
qnsz
2011-7-5 16:34:39
2#
nomad5
数据集A:变量No,V1,V2,V3(i行,4列)
数据集B:变量V1,V2,V3(1行,3列)
数据集C:变量No,V1,V2,V3(i行,4列)
C(i,v1,v2,v3)=abs[A(i,v1,v2,v3)-B(v1,v2,v3)]
这样说清楚了吧?
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
板凳
zhaoping603
2011-7-6 09:54:20
data a;
input no v1 v2 v3;
cards;
1 2 3 4
2 3 4 5
3 4 5 6
4 2 1 5
;run;
data b;
input v1 v2 v3;
cards;
2 2 2
;run;
proc sql;
create table want as
select no,a.v1-b.v1 as v1 ,a.v2-b.v2 as v2,a.v3-b.v3 as v3
from a,b;
run;
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
报纸
zhaoping603
2011-7-6 10:35:11
复制代码
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
地板
qnsz
2011-7-6 10:50:13
数据集A:变量No,V1,V2,V3(i行,4列)
数据集B:变量V1,V2,V3(1行,3列)
数据集C:变量No,V1,V2,V3(i行,4列)
C(i,v1,v2,v3)=abs[A(i,v1,v2,v3)-B(v1,v2,v3)]
需要取绝对值,并且对A中的缺失值在C中继续保留为缺失值(不进行计算)
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
点击查看更多内容…
7楼
qnsz
2011-7-6 10:51:49
4#
zhaoping603
而且还有个问题,SAS说命令不能超过6000个字符,我有2000个变量,这么弄进去命令不能运行。
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
8楼
zhaoping603
2011-7-6 14:29:19
缺失值,绝对值好弄。主要是批量处理问题,你的两个数据集的变量的名字都是一样的么?建议你看看SAS里边矩阵能不能解决,这个我不懂。或者用数组吧。
7#
qnsz
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
9楼
zhaoping603
2011-7-6 15:27:30
程序只适用变量名如v1,v2,这种规则的后面有数字的,你也可以写不规则的,但是要罗列出来了。更高级的,兼顾所有的,我不会写了。
复制代码
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
10楼
qnsz
2011-7-6 20:18:59
用楼上的代码,并把数据集B复制黏贴成同样是i行的矩阵,结果运行的时候SAS说out of resources
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
11楼
zhaoping603
2011-7-7 09:39:29
你说你的B数据集是一行的,我就按照一行的写的程序,不适合于多行。你跑一下我的程序就知道,完全符合你的要求。你不说你的变量名字具体是什么样的,我就按照v1,v2,这样带数字的做了。我的程序有一个毛病是,由于数组的命名,变量名要求如v1,v2这种才能运行无措。其他的问题都没有。你先跑好别人的程序再改。而且你自己的修改未必使程序能适合。17行里面你可以去掉noprint,其他都是必须的关键字。你的更多问题,我没有能力回答啦。抱歉。
10#
qnsz
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
12楼
qnsz
2011-7-7 16:23:13
11#
zhaoping603
额,我又把我的数据集名字重命名成AB果然就能用了。我原来是把你程序里面的a和B改成我数据的名字,结果不能用。但是我怎么弄也不能让它处理3列以上的数据,你再帮我看看行么?
stock 5000行,变量:sample,i,no,name,v1-v2185
mean 1行,变量:v1-v2185
其他的还是一样。
顺便再问下为啥用SASHELP.VCOLUMN里面的数据呢?
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
13楼
zhaoping603
2011-7-7 17:05:45
SASHELP.VCOLUMN 是库SASHELP中的数据集,包含所有的库中的数据集的信息,里面有变量名字。我是想从这里取出变量名字,重命名,避免与前一个数据集一起操作时,由于名字相同,覆盖掉信息。我没处理过那么大的数据,看你提供的变量名字都还是v1,v2这样的。我觉得你把我的程序改一下就可以用了。但是数据太大,也可能在
select *
from stock ,mean;
run;
这步,由于数据大有问题。我没处理过这么大数据。建议你考虑IML矩阵,自己学学。
复制代码
12#
qnsz
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
14楼
zhaoping603
2011-7-8 09:04:40
有可能你没有完全改好。也有可能是你之前跑的程序出现的数据集已经是错误的了。这样的话,建议你把这样的错的数据集删掉,否则再跑改过的程序,往那个错误的数据集中读入数据会经常出错的。这个问题SAS总是这样。
13#
zhaoping603
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
15楼
qnsz
2011-7-8 10:26:55
14#
zhaoping603
高手 ,再帮我看下着两个,行不行?O(∩_∩)O谢谢!
https://bbs.pinggu.org/thread-1130083-1-1.html
https://bbs.pinggu.org/thread-1131604-1-1.html
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
16楼
qnsz
2011-7-19 22:50:46
13#
zhaoping603
申请版主发奖
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
17楼
xw358919241
2013-7-21 17:55:16
大神们好,我能咨询一个问题么?请问如果我已经有了一个数据集A,要生成新的数据集B,而且B的数据是从A的第三行开始的,请问程序该如何写?谢谢!
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
18楼
tanlianwm
2013-7-23 22:39:20
data test2;
set test1;
if _n_ < 3 then delete;
run;
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
相关推荐
请问如何使SAS数据集显示变量名而不是变量的标签?
[求助]如何把SAS数据集作为矩阵进行运算?
请教:关于sas数据集操作的问题?
很大的SAS数据集怎样分成几个小数据集呢?
SAS数据集一问..
请问SAS数据集中如何去掉某行
怎样在已有的SAS数据集的基础上创建新的数据集?
如何找出sas数据集中某些变量相同的记录
sas数据集的变量名是中文,怎么引用?
sas数据集中的日期计算(相减)
栏目导航
SAS专版
Stata专版
经管在职研
外文文献专区
休闲灌水
行业分析报告
热门文章
张川川 对经济学期刊审稿工作的几点思考
CDA 认证考试大纲 2025 重磅更新:一二级考 ...
一文了解11种最常见的机器学习算法应用场景
新宏观丨盛松成教授是传统经济学者中少有的 ...
元旦致辞:以初心,敬新岁,二十载,再启航 ...
板材十大品牌 2025-2026 揭晓 香格里国际五 ...
笠翁对韵PDF
饲料行业全面深入分析:2026 - 2032年CAGR为 ...
轮胎成型模具行业全面深度分析:2026 - 203 ...
【24重磅,自用整理!】2003-2024上市公司战略 ...
推荐文章
26年寒假天津站|Gemini论文写作&数据分析 ...
2026JG学术冬训营:从Stata初高到Python机器 ...
关于如何利用文献的若干建议
关于学术研究和论文发表的一些建议
关于科研中如何学习基础知识的一些建议 (一 ...
一个自编的经济学建模小案例 --写给授课本科 ...
AI智能体赋能教学改革: 全国AI教育教学应用 ...
2025中国AIoT产业全景图谱报告-406页
关于文献求助的一些建议
几种免费下载文献的方法----我的文献应助经
说点什么
分享
微信
QQ空间
QQ
微博
扫码加好友,拉您进群
各岗位、行业、专业交流群