MathGroup Archive 2012

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

Search the Archive

Re: take square of the second and third column of a table

  • To: mathgroup at smc.vnet.net
  • Subject: [mg124194] Re: take square of the second and third column of a table
  • From: "Nasser M. Abbasi" <nma at 12000.org>
  • Date: Thu, 12 Jan 2012 04:21:03 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <jel20o$lkl$1@smc.vnet.net>
  • Reply-to: nma at 12000.org

On 1/11/2012 4:21 PM, hanciong awesome wrote:
> Hello, suppose I have a very long table like this:
>
> 1 2 3
> 4 5 6
> 7 8 9
> .......
> 2 3 4
>
> how can I take square of the 2nd and 3rd column? I always do it by
> making a new table. so let's say the above table is A and it has 100
> lines, then I make the new table as the following:
>
> B=Table[{A[[n]][[1]],A[[n]][[2]]^2,A[[n]][[3]]^2},{n,1,100}]
>
> But if the length of the table is unknown, this way is impractical.
> Could anyone suggests better way? thank you
>

given

tbl = {{1, 2, 3},{4, 5, 6}, {7, 8, 9} ,{2, 3, 4}}

one way for the second column:

Map[#[[2]]^2 &, tbl]
-->{4, 25, 576}


and for the third column

Map[#[[3]]^2 &, tbl]
-->{9, 36, 1296}


or you can make a list of the columns you want to square and
do both at the same time, like this

lstOfColumns = {2, 3};
Map[tbl[[All, #]]^2 &, lstOfColumns]
-->{{4, 25, 576}, {9, 36, 1296}}

and many other ways.

--Nasser




  • Prev by Date: Re: take square of the second and third column of a table
  • Next by Date: Re: take square of the second and third column of a table
  • Previous by thread: Re: take square of the second and third column of a table
  • Next by thread: Re: take square of the second and third column of a table