Sponsored Content
Top Forums Shell Programming and Scripting Adding the individual columns of a matrix. Post 302520759 by Klashxx on Monday 9th of May 2011 06:14:20 AM
Old 05-09-2011
Try this ( don't know if your system will handle it ):
Code:
awk '{for (i=1;i<=NF;i++){a[i]+=$i;if (i>max){max=i}}}END{for (j=1;j<=max;j++){print a[j]}}' file

These 3 Users Gave Thanks to Klashxx For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

convert matrix to row and columns

Dear Unix Gurus, I have a sample data set that looks like this y1 y2 y3 y4 y5 x1 0.3 0.5 2.3 3.1 5.1 x2 1.2 4.1 3.5 1.7 1.2 x3 3.1 2.1 1.0 4.1 2.1 x4 5.0 4.0 6.0 7.0 1.1 I want to open it up so that I get x1 y1 0.3 x2 y1 1.2 x3 y1 3.1 x4 y1 5.0 x1 y2 0.5 x2 y2... (3 Replies)
Discussion started by: tintin72
3 Replies

2. Shell Programming and Scripting

awk? create similarity matrix by calculating overlaps between sets comprising of individual parts

Hi everyone I am very new at awk and to me the task I need to get done is very very challenging... Nevertheless, after admiring how fast and elegant issues are being solved here I am sure this is my best chance. I have a 2D data file (input file is a plain tab-delimited text file). The first... (1 Reply)
Discussion started by: stonemonkey
1 Replies

3. Shell Programming and Scripting

Awk based script to find the median of all individual columns in a data file

Hi All, I have some data like below. Step1,Param1,Param2,Param3 1,2,3,4 2,3,4,5 2,4,5,6 3,0,1,2 3,0,0,0 3,2,1,3 ........ so on Where I need to find the median(arithmetic) of each column from Param1...to..Param3 for each set of Step1 values. (Sort each specific column, if the... (5 Replies)
Discussion started by: ks_reddy
5 Replies

4. Shell Programming and Scripting

conversion: 3 columns into matrix

Hi guys, here https://www.unix.com/shell-programming-scripting/193043-3-column-csv-correlation-matrix-awk-perl.html I found awk script converting awk '{ OFS = ";" if (t) { if (l != $1) t = t OFS $1 } else t = OFS $1 x = x ? x OFS $NF : $NF l = $1 }... (2 Replies)
Discussion started by: grincz
2 Replies

5. Shell Programming and Scripting

Adding or substracting from a Matrix column

Hello! I'm new to linux programming. It would be great if you could help me out. I have a matrix of kind: 10 30.0 20 190.5 40 180. 50 320.5 I would like to substract 180 from column 2 If the value is >180 to add 180 for column 2 If the value is <180 nothing if it is equal to... (3 Replies)
Discussion started by: lovelinux
3 Replies

6. Programming

Converting columns to matrix

Dear All I would like to convert columns to matrix For example my data looks like this D2 0 D2 0 1.0 D2 0 D2 1 0.308 D2 0 D2 2 0.554 D2 0 D2 3 0.287 D2 0 D2 4 0.633 D2 0 D2 5 0.341 D2 0 D2 6 0.665 D2 0 D2 7 0.698 D2 0 D2 8 0.625 D2 0 D2 9 0.429 D2 0 D2 10 0.698 D2 0 D2 11... (7 Replies)
Discussion started by: bala06
7 Replies

7. Programming

Transforming 3 columns to matrix format

Dear All I have a huge data for 3 columns similar to this D2cls0 D2cls0 1 D2cls0 D2cls1 0.308 D2cls0 D2cls2 0.554 D2cls0 D2cls3 0.287 D2cls0 D2cls4 0.633 D2cls0 D2cls5 0.341 D2cls0 D2cls6 0.665 D2cls0 D2cls7 0.698 D2cls0 D2cls8 0.625 D2cls0 D2cls9 0.429 I... (9 Replies)
Discussion started by: bala06
9 Replies

8. Shell Programming and Scripting

Square matrix to columns

Hello all, I am quite new in this but I need some help to keep going with my analysis. I am struggling with a short script to read a square matrix and convert it in two collumns. A B C D A 0.00 0.06 0.51 0.03 B 0.06 0.00 0.72 0.48 C 0.51 0.72 0.00 ... (7 Replies)
Discussion started by: EvaAM
7 Replies

9. Shell Programming and Scripting

How to convert 2 columns into matrix -awk?

How can i convert two columns in to o and 1 matrix. thnks Input a c1 b c2 c c1 d c3 e c4 output c1 c2 c3 c4 a 1 0 0 0 b 0 1 0 0 c 1 0 0 0 d 0 0 ... (5 Replies)
Discussion started by: quincyjones
5 Replies

10. Shell Programming and Scripting

Transform columns to matrix

The following code transform the matrix to columns. Is it possible to do it other way around ( get the input from the output) ? input y1 y2 y3 y4 y5 x1 0.3 0.5 2.3 3.1 5.1 x2 1.2 4.1 3.5 1.7 1.2 x3 3.1 2.1 1.0 4.1 2.1 x4 5.0 4.0 6.0 7.0 1.1 output x1 y1 0.3 x2 y1 1.2 x3... (1 Reply)
Discussion started by: quincyjones
1 Replies
VecStat(3pm)						User Contributed Perl Documentation					      VecStat(3pm)

NAME
Math::VecStat - Some basic numeric stats on vectors SYNOPSIS
use Math::VecStat qw(max min maxabs minabs sum average); $max=max(@vector); $max=max(@vector); ($max,$imax)=max(@vector); ($max,$imax)=max(@vector); $min=min(@vector); $min=min(@vector); ($max,$imin)=min(@vector); ($max,$imin)=min(@vector); $max=maxabs(@vector); $max=maxabs(@vector); ($max,$imax)=maxabs(@vector); ($max,$imax)=maxabs(@vector); $min=minabs(@vector); $min=minabs(@vector); ($max,$imin)=minabs(@vector); ($max,$imin)=minabs(@vector); $sum=sum($v1,$v2,...); $sum=sum(@vector); $sum=sum(@vector); $average=average($v1,$v2,...); $av=average(@vector); $av=average(@vector); $ref=vecprod($scalar,@vector); $ok=ordered(@vector); $ok=ordered(@vector); $ref=sumbyelement(@vector1,@vector2); $ref=diffbyelement(@vector1,@vector2); $ok=allequal(@vector1,@vector2); $ref=convolute(@vector1,@vector2); DESCRIPTION
This package provides some basic statistics on numerical vectors. All the subroutines can take a reference to the vector to be operated on. In some cases a copy of the vector is acceptable, but is not recommended for efficiency. max(@vector), max(@vector) return the maximum value of given values or vector. In an array context returns the value and the index in the array where it occurs. min(@vector), min(@vector) return the minimum value of given values or vector, In an array context returns the value and the index in the array where it occurs. maxabs(@vector), maxabs(@vector) return the maximum value of absolute of the given values or vector. In an array context returns the value and the index in the array where it occurs. minabs(@vector), minabs(@vector) return the minimum value of the absolute of the given values or vector. In an array context returns the value and the index in the array where it occurs. sum($v1,$v2,...), sum(@vector), sum(@vector) return the sum of the given values or vector average($v1,$v2,..), average(@vector), average(@vector) return the average of the given values or vector vecprod($a,$v1,$v2,..), vecprod($a,@vector), vecprod( $a, @vector ) return a vector built by multiplying the scalar $a by each element of the @vector. ordered($v1,$v2,..), ordered(@vector), ordered(@vector) return nonzero iff the vector is nondecreasing with respect to its index. To be used like if( ordered( $lowBound, $value, $highBound ) ){ instead of the (slightly) more clumsy if( ($lowBound <= $value) && ($value <= $highBound) ) { sumbyelement( @array1, @array2 ), diffbyelement(@array1,@array2) return the element-by-element sum or difference of two identically-sized vectors. Given $s = sumbyelement( [10,20,30], [1,2,3] ); $d = diffbyelement( [10,20,30], [1,2,3] ); $s will be "[11,22,33]", $d will be "[9,18,27]". allequal( @array1, @array2 ) returns true if and only if the two arrays are numerically identical. convolute( @array1, @array2 ) return a reference to an array containing the element-by-element product of the two input arrays. I.e., $r = convolute( [1,2,3], [-1,2,1] ); returns a reference to [-1,4,3] median evaluates the median, i.e. an element which separates the population in two halves. It returns a reference to a list whose first element is the median value and the second element is the index of the median element in the original vector. $a = Math::VecStat::median( [9,8,7,6,5,4,3,2,1] ); returns the list reference [ 5, 4 ] i.e. the median value is 5 and it is found at position 4 of the original array. If there are several elements of the array having the median value, e.g. [1,3,3,3,5]. In this case we choose always the first element in the original vector which is a median. In the example, we return [3,1]. =back =head1 HISTORY $Log: VecStat.pm,v $ Revision 1.9 2003/04/20 00:49:00 spinellia@acm.org Perl 5.8 broke test 36, exposing inconsistency in C<median>. Fixed, thanks to david@jamesgang.com. Revision 1.8 2001/01/26 11:10:00 spinellia@acm.org Added function median. Fixed test, thanks to Andreas Marcel Riechert <riechert@pobox.com> Revision 1.7 2000/10/24 15:28:00 spinellia@acm.org Added functions allequal diffbyelement Created a reasonable test suite. Revision 1.6 2000/06/29 16:06:37 spinellia@acm.org Added functions vecprod, convolute, sumbyelement Revision 1.5 1997/02/26 17:20:37 willijar Added line before pod header so pod2man installs man page correctly Revision 1.4 1996/02/20 07:53:10 willijar Added ability to return index in array contex to max and min functions. Added minabs and maxabs functions. Thanks to Mark Borges <mdb@cdc.noaa.gov> for these suggestions. Revision 1.3 1996/01/06 11:03:30 willijar Fixed stupid bug that crept into looping in min and max functions Revision 1.2 1995/12/26 09:56:38 willijar Oops - removed xy data functions. Revision 1.1 1995/12/26 09:39:07 willijar Initial revision BUGS
Let me know. I welcome any appropriate additions for this package. AUTHORS
John A.R. Williams <J.A.R.Williams@aston.ac.uk> Andrea Spinelli <spinellia@acm.org> perl v5.12.4 2011-07-11 VecStat(3pm)
All times are GMT -4. The time now is 08:49 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy