Re: Cases and Nonatomic expression

• To: mathgroup at smc.vnet.net
• Subject: [mg56776] Re: Cases and Nonatomic expression
• From: "Ray Koopman" <koopman at sfu.ca>
• Date: Thu, 5 May 2005 06:04:36 -0400 (EDT)
• References: <d59lfg\$6i6\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Swati Shah wrote:
> Hi Everyone
>
> I have a list
> k = {{1,1,2,2,3}, {1,2,2,2,3}, {2,3,3,3,3}, {5,2,2,2,1}, {6,1,1,1,1},
> {6,1,1,1,1}}
>
> If the first element of the sublist is 1 I want to append the sublist
to
> g1, if it starts with 2 then append g2 or starts with 6 then append
to g6
>
> I used cases and did the following:
> m1 = Cases[k, {1, __}];
> m2 = Cases[k, {2, __}];
> m3 = Cases[k, {3, __}];
> m4 = Cases[k, {4, __}];
> m5 = Cases[k, {5, __}];
> m6 = Cases[k, {6, __}];
>
> However, instead of typing each one of these lines separately, it
> would be nice to use just a simple Map or something or a for loop (as
> I have more than 50 different start values)
>
> I tried the following 2 ways:
>
> a) using a for loopFor [i = 1, i < 7,
>   t = "g" <> ToString [i];
>   Print [t];
>   t = Cases [k, {i, __}];
>   Print [t]
>     i++]
>
> However outside the for loop the values of g1..g6 is empty.
>
> b) I tried using MAP (in the similar way as the for)
>
> But I get the following error:
> Append::normal: Nonatomic expression expected at position 1 in
Append[g1,{1, \
> 168, 0.695873, 6.54462, 62.4578, 82.5056}]
>
>
> Any suggestions as to how I can get this working?
>
>
> Swati

In[1]:= k = {{1,1,2,2,3}, {1,2,2,2,3}, {2,3,3,3,3},
{5,2,2,2,1}, {6,1,1,1,1}, {6,1,1,1,1}};

In[2]:= Scan[ToExpression["g" <> ToString@# <> "= {}"]&,
Range@Max[First/@k]];
{g1,g2,g3,g4,g5,g6}

Out[3]= {{},{},{},{},{},{}}

In[4]:= Scan[ToExpression["AppendTo[g" <> ToString@First@# <>
"," <> ToString@# <> "]"]&, k];
{g1,g2,g3,g4,g5,g6}

Out[5]= {{{1,1,2,2,3},{1,2,2,2,3}}, {{2,3,3,3,3}}, {}, {},
{{5,2,2,2,1}}, {{6,1,1,1,1},{6,1,1,1,1}}}

```

• Prev by Date: Re: changing algorithm, finding residuals w/FindFit
• Next by Date: Re: Cases and Nonatomic expression
• Previous by thread: Re: Cases and Nonatomic expression
• Next by thread: Re: Cases and Nonatomic expression