Re: Multiply a constant to a matrix column
- To: mathgroup at smc.vnet.net
- Subject: [mg16328] Re: [mg16266] Multiply a constant to a matrix column
- From: BobHanlon at aol.com
- Date: Sun, 7 Mar 1999 01:05:48 -0500
- Sender: owner-wri-mathgroup at wolfram.com
In a message dated 3/5/99 11:57:06 AM, heahn at nanum.kaeri.re.kr writes: >I would like to multiply a constant number to a certain column of an existing >matrix in Mathematica and I am having a hard time. > >First, I have a 1000 x 3 matrix A. There is no command that allow me to >multiply a constant number to a specific column (let say I want to multiply >100 to the second column), so I extract three columns >separately using > >A1 = A[Range[1,1000],Range[1,1]]; >A2 = A[Range[1,1000],Range[2,2]]; >A3 = A[Range[1,1000],Range[3,3]]; > >Then I multiply a constant to a extracted >column which is a vector now. So I did > >A2b = 100 A2; > >Then I recombined the columns as > >A4 = ColumnJoin[A1,A2b,A3] > >but I found out that ColumnJoin command does not worked the way I expected >it to be. > >Could anyone know a simple solution to this problem? > Try this multCol[x_List?MatrixQ, mult_, col_Integer?Positive] := Module[{y = Transpose[x]}, Transpose[ReplacePart[y, mult* y[[col]], col]]]; x = Array[a, {4, 7}]; multCol[x, c, 5]