[vsni.co.uk] Contact us
Author Message
Post new topic

  ASReml  ~  !G and group of variates

j.hadfield@ed.ac.uk
Posted: Sun Nov 12, 2017 2:30 pm Reply with quote
Joined: 13 Aug 2008 Posts: 37
Hi,

I am using asreml stand alone. I would like to group contiguous data fields using the !G qualifier. I have 7 coumns (the first of which is c1) which are factor variables with 3746 levels. I use:

c1 !G 7 3746

However, when I try this I get the error "Missing/faulty !SKIP or !A needed for c1" The !SKIP command is OK, and I have tried placing !A in every conceivable position, but to no avail. Any help would be very useful.

Cheers,
Jarrod
View user's profile Send private message
Arthur
Posted: Mon Nov 13, 2017 9:11 pm Reply with quote
Joined: 05 Aug 2008 Posts: 471 Location: Orange, NSW
Dear Jarrod,
The error message is generated when actually trying to read the data.

When trying to read the first line of data, and model term c1 it was expecting a numeric value but found
a nonnumeric value. The common causes are that an alpha numeric variable has not been declared as such (!A)
or that you have not skipped heading lines.

But there could be other causes.

Hopefully, ASReml has reported the line it is failing to read,

You could increase the !SKIP number so it looks at a different line.

_________________
Arthur Gilmour

Retired Principal Research Scientist (Biometrics)
View user's profile Send private message Send e-mail Visit poster's website
j.hadfield@ed.ac.uk
Posted: Mon Nov 13, 2017 10:27 pm Reply with quote
Joined: 13 Aug 2008 Posts: 37
Hi Arthur,

From the user manual (P50 version 3.0) it reads as if c1 !G 7 3746 should be read as alphanumeric (with 3746 levels). If I also need to use !A where should it go?

Cheers,

Jarrod
View user's profile Send private message
Arthur
Posted: Tue Nov 14, 2017 11:22 pm Reply with quote
Joined: 05 Aug 2008 Posts: 471 Location: Orange, NSW
Dear Jarrod,

As I read the Guide, ASReml will assume your have the factor levels coded numerically 1:3746 and that you do not need the !A. (That is more likely the way I coded it)

_________________
Arthur Gilmour

Retired Principal Research Scientist (Biometrics)
View user's profile Send private message Send e-mail Visit poster's website
j.hadfield@ed.ac.uk
Posted: Wed Nov 15, 2017 11:55 am Reply with quote
Joined: 13 Aug 2008 Posts: 37
Hi Arthur,

Thank you - that seemed to resolve things but there still seems to be some issues. I have groups of variates in blocks of 7. The c's are factors:

c1 !G 7 3746
c2 !G 7 3746
c3 !G 7 3746

The w's are numeric weights:

w1 !G 7
w2 !G 7
w3 !G 7

If the data were in long format (and day indexed 'Traits') I would like to fit the random effect model

day.c1.w1 -day.c2.w2 and(day.c2.w2) -day.c3.w3 and(day.c3.w3)

which is a multimembership model where each random effect has a unique weighting. The levels of c are also associated with a pedigree.

I thought that in wide format the equivalent model would be:

c1.w1 -c2.w2 and(c2.w2) -c3.w3 and(c3.w3)

However, this tells me c1 is a 7 x 32179 interaction where I think it should be a 7 x 3746 interaction. It also complains that the NRM/GRM matrix is undefined or the wrong size, which is perhas related to the same issue?
I thought that perhaps the w's were not being treated as numeric, but 3746 x the number of uniqe numbers in w1 does not equal 32179 so I'm a bit stumped.

Any help would be gratefully received.

Cheers,

Jarrod
View user's profile Send private message
Arthur
Posted: Sat Nov 18, 2017 5:42 am Reply with quote
Joined: 05 Aug 2008 Posts: 471 Location: Orange, NSW
Dear Jarrod,

It seems you are asking for a model I have not considered/covered.

Following is a job showing the vec() model function.

!WORKSPACE 100 !RENAME !ARGS 6 // !DOPART $1
Title: vech.
# Y1 Y2 C1 c2 x1 x2
# 65 70 1 1 2 3
# 75 74 2 1 2 3
# 71 78 2 2 2 3
# 71 81 1 1 4 5
# 75 85 1 2 4 5
# 85 95 2 2 4 5
# 81 86 1 1 6 7
# 85 91 2 1 6 7
# 95 91 2 2 6 7
Y1 # 71
Y2 # 81
C !G 2 2 # 1
X !G 2 # 5

vech.asd !SKIP 1
!PART 1
Y1 ~ mu C[1].X[1]

!PART 2
Y2 ~ mu C[2].X[2]

!PART 3
Y1 Y2 ~ Trait Trait.vec(X).vec(C)

!PART 4
Y1 ~ mu X[1]

!PART 5
Y2 ~ mu X[2]

!PART 6
Y1 Y2 ~ Trait Trait.vec(X)

I think you want something like PART 3 which is the combination of PARTS 1 and 2,

But PART 3 does not run.

Part 6 which is the combination of parts 4 and 5 does run.

Sorry about that.

_________________
Arthur Gilmour

Retired Principal Research Scientist (Biometrics)
View user's profile Send private message Send e-mail Visit poster's website
j.hadfield@ed.ac.uk
Posted: Sat Nov 18, 2017 10:15 am Reply with quote
Joined: 13 Aug 2008 Posts: 37
Hi Arthur,

A pity - but thanks for letting me know. Do you think there is any chance to add this functionality in the near future, or should I seek a different solution?

Cheers,

Jarrod
View user's profile Send private message

Display posts from previous:  

All times are GMT
Page 1 of 1
Post new topic

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum