楼主: 子衿1219
1176 2

关于宏命令求助。 [推广有奖]

  • 1关注
  • 4粉丝

讲师

70%

还不是VIP/贵宾

-

威望
0
论坛币
60 个
通用积分
1.0023
学术水平
2 点
热心指数
0 点
信用等级
1 点
经验
13521 点
帖子
326
精华
0
在线时间
431 小时
注册时间
2012-3-19
最后登录
2018-7-8

楼主
子衿1219 发表于 2012-6-18 10:34:01 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我不用宏命令的话,代码如下没有错误:
data plant;
infile'C:\Users\Administrator\Desktop\final\plants.txt';
length fn$13 ln$15;
input fn$ ln$ x y;
if fn='cornus' and ln='florida';
file'E:\sas\sasdata\plants.txt';
put fn ln x y;run;
proc freq;
table x*y;
symbol value=asterisk cv=red;
proc gplot;
plot y*x;
title'cornus florida';
run;

可是我用宏之后,出现报错,代码如下
%macro two(name1,name2,val=,color=);
if fn='&name1' and ln='&name2';
file'E:\sas\sasdata\plants.txt';
put fn ln x y;run;
proc freq;
table x*y;
symbol value=&val cv=&color;
proc gplot;
plot y*x;
title"&name1 &name2";
run;
%mend;

data plant;
infile'C:\Users\Administrator\Desktop\final\plants.txt';
length fn$13 ln$15;
input fn$ ln$ x y;
%two(cornus, florida,val=asterisk,color=red);
run;

一直显示不了结果,log里面没有红色显示,但是说没有观测值。
我想问下各位前辈,这是怎么。

二维码

扫码加我 拉你入群

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

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

关键词:宏命令 Florida Desktop Plants symbol 宏命令

沙发
00810112 发表于 2012-6-18 10:57:25
你看一下把
if fn='&name1' and ln='&name2';
改成
if fn="&name1" and ln="&name2";
可不可以

藤椅
子衿1219 发表于 2012-6-18 12:20:41
00810112 发表于 2012-6-18 10:57
你看一下把
if fn='&name1' and ln='&name2';
改成
我改过之后,log里面又显示这是一个无效的宏名字,我不知道为什么。但是将名字two改为plot之后就可以了。

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

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