MathGroup Archive 2005

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

Search the Archive

Re: List Replace Problems

  • To: mathgroup at smc.vnet.net
  • Subject: [mg59888] Re: List Replace Problems
  • From: Peter Pein <petsie at dordos.net>
  • Date: Wed, 24 Aug 2005 06:32:44 -0400 (EDT)
  • References: <deeom3$3rl$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

wesh schrieb:
> I want to perform some element by element operations on a class of
> lists. For a given list The operation in a much simplified form can be
> characterized by
> 
> a = {1, 3, 5, 7, 9}; 
> Do[a[[i]] /= i, {i, 1, 5}]; 
> a
> 
> Out[38]=
> {1, 3/2, 5/3, 7/4, 9/5}
> 
> Now, however, if I try to define a function to do this for a general
> list, namely,
> 
> dlst[u_List] =
>    Do[u[[i]] /= i,  {i, 1, 5}]; 
> a = {1, 3, 5, 7, 9}; 
> dlst[a]; 
> a
> 
> Set::setps: 
> ({1, 2, 3, 4, 5}) in assignment of part is not a symbol. ! More ...
> 
> Out[39]=
> {1, 3, 5, 7, 9}
> 
> I get the above error. It says I'm trying to assign one number to
> another number. Why does Mathematica perform in the first case but 
> refuse to in the second.
> 
> I tried
> 
> b = Do[ReplacePart[a,  a[[i]]/i, i], {i, 1, 5}]
> 
> but it doesn't even bother to return an error message.
> 
> 
> How, can I get the desired function?
> 
> Thanks,
> 
> Wesh
> 
What about

a = {1, 3, 5, 7, 9};
a = MapIndexed[#1/#2[[1]]&, a];
a

{1, 3/2, 5/3, 7/4, 9/5}

?

-- 
Peter Pein, Berlin
GnuPG Key ID: 0xA34C5A82
http://people.freenet.de/Peter_Berlin/


  • Prev by Date: Visualization site updates
  • Next by Date: Re: Re: Re: ever gotten SVG Export to work?
  • Previous by thread: Re: List Replace Problems
  • Next by thread: Re: List Replace Problems