MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

REpost: Nonatomic error associated with Intersection

  • To: mathgroup at smc.vnet.net
  • Subject: [mg53618] REpost: Nonatomic error associated with Intersection
  • From: Todd Allen <genesplicer28 at yahoo.com>
  • Date: Thu, 20 Jan 2005 03:48:11 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

(Re-post of previous message due to garbled
characters...sorry for that (and thanks to Dr. Bob for
the heads up on proper copy-paste methods).

Hi everyone,

    I was hoping the usergroup might have some
thoughts on a peculiar error message I have been
receiving from Mathematica V 5.1(win XP).

    I have a set of nested loops where I try to
compare the elements of two matrices using
Intersection, and if there is indeed an intersection,
make a change to one of the matrices.  The code
generates an error message: Intersection::normal:
"Nonatomic expression expected at position 1.......

I believe the Head of the two lists I am comparing are
in fact lists, however perhaps I am missing something
as to how mathemamatica parses the input.

Below is the basic code:

temp={{"CEST-01-A-01", "CEST-17-A-06"},
{"CEST-01-A-02", "CEST-01-A-06", 
   "CEST-02-C-06", "CEST-03-B-03", "CEST-03-G-07",
"CEST-05-C-11", 
   "CEST-06-A-09", "CEST-08-B-07", "CEST-09-A-02",
"CEST-12-A-06", 
   "CEST-12-G-11", "CEST-16-C-02", "CEST-16-H-04",
"CEST-17-A-04", 
   "CEST-18-D-05", "CEST-19-C-01", "CEST-19-D-04",
"CEST-19-G-01", 
   "CEST-20-C-09", "CEST-20-G-08", "CEST-22-D-07",
"CEST-22-D-11", 
   "CEST-23-C-09", "CEST-26-G-08", "CEST-27-E-04",
"CEST-27-E-12", 
   "CEST-30-C-08", "CEST-30-E-03", "CEST-34-C-06",
"CEST-34-F-04", 
   "CEST-35-G-09", "CEST-36-A-01", "CEST-36-B-01",
"CEST-37-F-03", 
   "CEST-37-F-06", "CEST-45-A-10", "CEST-45-H-05",
"CEST-46-D-03", 
   "CEST-46-D-11", "CEST-48-D-01", "CEST-48-E-01",
"CEST-50-E-09", 
   "CEST-51-A-01", "CEST-51-C-09", "CEST-53-G-01",
"CEST-54-C-12", 
   "CEST-54-H-11", "CEST-55-E-01", "CEST-55-G-06",
"CEST-57-C-12", 
   "CEST-57-E-12", "CEST-59-F-05"}, {"CEST-01-A-04"}};

acontology={{"AEST-01-A-01", "blank", "None", "None"},
{"AEST-01-A-02", "CEST-01-A-01", 
   "enzyme / ion transporter", 
   "cell growth and/or maintenance / transport / ion
transport"}, 
  {"AEST-01-A-03", "CEST-01-A-02", 
   "translation regulator / translation factor", 
   "cell growth and/or maintenance / metabolism /
biosynthesis"}};

outerindex = 1; innerindex = 1; While[outerindex <=
Length[acontology], 
   While[innerindex <= Length[temp], 
     If[Length[Intersection[acontology[[outerindex]],
temp[[innerindex]]]] == 
       1, acontology =
Append[acontology[[outerindex]], temp[[innerindex]]]; 
       innerindex = Length[temp] + 1, innerindex++]];
outerindex++; 
    innerindex = 1];


The output I am hoping for is to progressively match
components of each list to output as follows:

Given input:
Append[acontology[[2]], temp[[1]]]

Desired output:
{"AEST-01-A-02", "CEST-01-A-01", "enzyme / ion
transporter", 
  "cell growth and/or maintenance / transport / ion
transport", 
  {"CEST-01-A-01", "CEST-17-A-06"}}


When I have used various statements contained within
the above nested loops on their own, they seem to work
fine....however things fall apart onces put inside a
loop structure.  Any thoughts on why a loop or
Intersection might generate the Nonatomic expression
error?

Thanks again for any thoughts!!

Best regards,
Todd


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


  • Prev by Date: Re: does a matrix equivalent of the Arg function exist?
  • Next by Date: Re: Re: random matrix from row and column sums
  • Previous by thread: Re: Algebraic problem solved by simulation
  • Next by thread: Re: REpost: Nonatomic error associated with Intersection