awk based script to print the "mode(statistics term)" for each column in a data file
Hi All,
Thanks all for the continued support so far.
Today, I need to find the most occurring string/number(also called mode in statistics terminology) for each column in a data file (.csv type).
For one column of data(1.txt) like below
I can find the mode using the command
. The output is 1. ( As '1' appeared more number of times than other numbers) But if I have multiple columns in a csv file, I am unable to do this task for each column printing the mode side by side.So I need an awk based loop script to fulfill my requirement.
Please let me know if my problem statement is not clear.
This script is perfect for files with known number of columns
Hi Pamu,
Thanks for your quick reply.
This script is perfectly fine for all files which have equal number of columns.
My challenge is to find 'mode' for files(.csv type) where
1) I don't know how many columns are there unless I open each file and check(very tedious task)
2) Printing the output side by side like mode_of_col1,mode_of_col2 etc.
For the first one i can count the number of columns in each file and feed into variable and loop through.
For the second one I can use the command
to transpose the output.
But all these change are making my code very lengthy and also I need to process many files (some times in 1000's).
Thats why I am looking for automatic looping script to print 'mode' for each column as well as looping to random number of columns.
Can you modify your script if you can ?
Thank you very much. You provided me the exact solution that I am looking for .
This script is taking only 1/10000 part of time that the previous script (which works on individual columns ).
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
Look at the following data file(cou.data) which has four fields separated by tab.
Four fields are country name, land area, population, continent where it belongs.
As for country name or continent name which has two words, two words are separated by space.
(Data are not accurately... (1 Reply)
Hi!
I am having 02 files.
In first file" X" I am having 02 Columns
TCP-5100 Sybase_5100
TCP-5600 Sybase_5600
Second file "Y" for example--
:services (
:AdminInfo (
:chkpf_uid ("{A2F79713-B67D-4409-83A4-A90804E983E9}")
:ClassName (rule_services)
)
:compound ()... (12 Replies)
Hi, all, I have a file that looks like:
## XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
## YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
#AA AB AC AD AE AF AG AH AI AJ AK AL
20 60039 60039 ... (5 Replies)
Hello, I was looking for a way to select between the repeated entries (column1) based on the values of absolute values of column 3 (larger value). For example if the same gene id has FC value -2 and 1, I should get the output as -2. Kindly help.
GeneID Description FC ... (2 Replies)
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Hi All,
I have working (Perl) code to combine 2 input files into a single output file using the join function that works to a point, but has the following limitations:
1. I am restrained to 2 input files only.
2. Only the "matched" fields are written out to the "matched" output file and... (1 Reply)
Hi Friends,
Can any of you explain me about the below line of code?
mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`
Im not able to understand, what exactly it is doing :confused:
Any help would be useful for me.
Lokesha (4 Replies)