楼主: shfujim
3422 5

[求助]proc inbreed的输出结果如何调用 [推广有奖]

  • 2关注
  • 1粉丝

萝卜头

已卖:381份资源

博士生

46%

还不是VIP/贵宾

-

威望
0
论坛币
388 个
通用积分
5.4339
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
1369 点
帖子
194
精华
0
在线时间
261 小时
注册时间
2007-12-3
最后登录
2024-10-1

楼主
shfujim 发表于 2008-8-27 09:09:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

data inb;
input id sire dam;
cards;
1 . .
2 . .
3 . .
4 2 1
5 2 3
;
proc inbreed covar
   mattrix;
run;
/*------------------------------------*/
proc iml;
start main;
y={7,
   10,
   6};
x={1,
   1,
   1};
a={1  0  0 .5  0,
   0  1  0 .5 .5,
   0  0  1  0 .5,
  .5 .5  0  1 .25,
   0 .5 .5 .25 1};
z={1 0 0 0 0,
   0 0 1 0 0,
   0 0 0 0 1};

lamda=1;

b=x`*x;
c=x`*z;
d=z`*x;
e=z`*z;
f=inv(a);
g=(e+(f#lamda));
h=(b||c)//(d||g);
l=x`*y;
m=z`*y;
o=(l)//(m);
p=inv(h);
q=p*o;

print b c d e f g h l m o p q;
finish main;
run;
quit;

麻烦哪位前辈帮我看看,前半个部分是用Proc inbreed得到近交系数矩阵,后半部分的a就是上半部分输出的矩阵,怎么直接调用proc inbreed的输出结果,不用自己手动输入阿?

二维码

扫码加我 拉你入群

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

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

关键词:inbreed Breed 输出结果 Reed bree 结果 proc 输出 inbreed

回帖推荐

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

data inb;input id sire dam;cards;1 . .2 . .3 . .4 2 15 2 3;proc inbreed covar mattrix outcov=a;/*先把矩阵输入output到一个数据集a*/run;data a;/**只保留a中的矩阵部分前面的说明变量剔除掉,这个我没想到其他方法,做的有点笨,希望其他高手指点*/set a;keep col1-col5;run;proc iml;start main;use a;/*用数据集a*/read all into a;/*读取为矩阵a*/y={7,   10,   6};x={1,   1,  ...

本帖被以下文库推荐

学生,很普通的学生

沙发
realgod5417 发表于 2008-8-27 09:54:00

data inb;
input id sire dam;
cards;
1 . .
2 . .
3 . .
4 2 1
5 2 3
;
proc inbreed covar mattrix outcov=a;/*先把矩阵输入output到一个数据集a*/
run;

data a;/**只保留a中的矩阵部分前面的说明变量剔除掉,这个我没想到其他方法,做的有点笨,希望其他高手指点*/

set a;

keep col1-col5;

run;

proc iml;
start main;

use a;/*用数据集a*/

read all into a;/*读取为矩阵a*/
y={7,
   10,
   6};
x={1,
   1,
   1};

z={1 0 0 0 0,
   0 0 1 0 0,
   0 0 0 0 1};

lamda=1;

b=x`*x;
c=x`*z;
d=z`*x;
e=z`*z;
f=inv(a);
g=(e+(f#lamda));
h=(b||c)//(d||g);
l=x`*y;
m=z`*y;
o=(l)//(m);
p=inv(h);
q=p*o;

print b c d e f g h l m o p q;
finish main;
run;
quit;

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

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

梅须逊雪三分白雪却输梅一段香

藤椅
shfujim 发表于 2008-8-28 16:08:00

多谢2楼,

好像代码不能执行哎!

proc inbreed里面有那个ODS有用么?看说明书好像行的。

我是菜鸟,呵呵

[此贴子已经被作者于2008-8-28 16:11:21编辑过]

学生,很普通的学生

板凳
realgod5417 发表于 2008-8-29 09:08:00

proc inbreed种没有你的说的ODS啊?

你复制粘贴的问题吧?

梅须逊雪三分白雪却输梅一段香

报纸
shfujim 发表于 2008-8-29 11:19:00

找到错误了,有个分号是中文输入的。

多谢了!

学生,很普通的学生

地板
shfujim 发表于 2008-8-29 11:24:00

在Proc inbreed帮助文件里面有关于PROC INBREED: ODS Table Names 的介绍,这个ODS好像应该能够更简单些,我也在看。不知道能不能行。

学生,很普通的学生

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

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