adding a column


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers adding a column
# 1  
Old 10-07-2009
adding a column

Hi everybody,

I've got a file with 36074 fields. I need to insert an additional new columns 2,3,4 and 5 after the first field. The columns to insert are the same for all the lines: it's "1" doe the new field 2 and "0" for the rest. I did have a look in the forum and the suggested solution I found was something like this:

Code:
awk 'BEGIN {OF=OFS="\t"} {print $1, "1", "0", "0","0", $2, $3, $4}' file1 > file2

In this example the original file has only 4 fields, but I can't type all the 36074 fields :-(

Any suggestion would be greatly appreciated!
# 2  
Old 10-07-2009
Code:
awk 'BEGIN{FS=OFS="\t"}{$1=$1 "\t1\t0\t0\t0"}1' file1 > file2

# 3  
Old 10-07-2009
Assuming tab separated fields:

Code:
awk '$1 = $1"1\t0\t0\t0"' OFS='\t' infile

# 4  
Old 10-07-2009
Many thanks Radulov!
I've tried it out and there're some problems:
1. the added column at the field 2 appears exactly after the first column, there's no separator (of any kind);
2. some lines don't have an entry for each column, so those just jumped to forward

Example:

my old file:

Code:
a b c d
e    f g
c      e
t y u o

new file:
Code:
a1 0 0 0 b c d
e1 0 0 0 f g
c1 0 0 0 e
t1 0 0 0 y u o

Many thanks in advance for any ideas!

---------- Post updated at 10:26 AM ---------- Previous update was at 10:10 AM ----------

I've just tried out the command posted by Danmero and it works!
Many, many thanks for your kind help!
# 5  
Old 10-07-2009
Try:

Code:
sed 's/^[^ ]* /&1 0 0 0 /' infile


Last edited by radoulov; 10-07-2009 at 02:18 PM.. Reason: corrected: \& -> &
# 6  
Old 10-07-2009
Thanks Radulov!
Unfortunately, this code adds 1 only and there're no columns 3,4,5 with zeros. Sorry :-(
# 7  
Old 10-07-2009
Quote:
Originally Posted by zajtat
Code:
a b c d
e    f g
c      e
t y u o

new file:
Code:
a1 0 0 0 b c d
e1 0 0 0 f g
c1 0 0 0 e
t1 0 0 0 y u o

Code:
# cat file
a b c d
e    f g
c      e
t y u o
# awk '{$1=$1 "1 0 0 0"}1' file
a1 0 0 0 b c d
e1 0 0 0 f g
c1 0 0 0 e
t1 0 0 0 y u o

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Adding a column

Hello , My requirement is to add additional column sequentially to a text file based on the column value - i/p file id1|varchar id2|varchar id3|number id4|number id5|date id6|date --------------------------------------- o/p file colv1|id1 (if second column value is varchar then... (3 Replies)
Discussion started by: Pratik4891
3 Replies

2. Shell Programming and Scripting

Special column adding

Hi Team, I would like to add two dummy columns at the end of the file. I know how to add the columns using awk . Here is my problem. we have bit strange delimiter when I od -bc it shows 244 as its binary value. 0002200 060 244 060 244 060 244 066 065 244 060 244 244 012 0... (1 Reply)
Discussion started by: gvkumar25
1 Replies

3. Shell Programming and Scripting

Adding column

I have input CSV files as TS DS_WKLDNM InterfaceSpeed 29/07/2014 20:00:00 xxx112/1/18 10000000000 29/07/2014 09:00:00 xxx112/1/19 10000000000 29/07/2014 21:00:00 xxx112/1/2 10000000000 29/07/2014 20:00:00 xxx112/1/20 10000000000 29/07/2014... (10 Replies)
Discussion started by: Moon1234
10 Replies

4. Shell Programming and Scripting

Adding values of a column based on another column

Hello, I have a data such as this: ENSGALG00000000189 329 G A 4 2 0 ENSGALG00000000189 518 T C 5 1 0 ENSGALG00000000189 1104 G A 5 1 0 ENSGALG00000000187 3687 G T 5 1 0 ENSGALG00000000187 4533 A T 4 2 0 ENSGALG00000000233 5811 T C 4 2 0 ENSGALG00000000233 5998 C A 5 1 0 I want to... (3 Replies)
Discussion started by: Homa
3 Replies

5. Shell Programming and Scripting

Adding of two column values

Hi cat /tmp/xx.txt 1 4 1 5 1 6 2 1 2 1 2 1 i want to add the values of 2nd column resepect to 1st column values..for 1 in 1st column i need sum of all the values in 2nd column ..pls tell me hw to do it?? (8 Replies)
Discussion started by: Aditya.Gurgaon
8 Replies

6. Shell Programming and Scripting

Adding a specified value to a specified column - awk?

Hi everyone! I sometimes need to do some simple arithmetics, like adding a number to a certain column of a file. So I wrote a small function in the .bashrc file, which looks like this shifter() { COL=$1 VAL=$2 FILE=$3 cp $FILE $FILE.shifted awk 'NF==4 {$(( $COL )) = $(( $COL ))... (6 Replies)
Discussion started by: radudownload
6 Replies

7. UNIX for Dummies Questions & Answers

Rename a header column by adding another column entry to the header column name

Hi All, I have a file example.csv which looks like this GrpID,TargetID,Signal,Avg_Num CSCH74_1_1,2007,61,256 CSCH74_1_1,212007,647,679 CSCH74_1_1,12007,3,32 CSCH74_1_1,207,299,777 I want the output as GrpID,TragetID,Signal-CSCH74_1_1,Avg_Num CSCH74_1_1,2007,61,256... (1 Reply)
Discussion started by: Vavad
1 Replies

8. Shell Programming and Scripting

Rename a header column by adding another column entry to the header column name URGENT!!

Hi All, I have a file example.csv which looks like this GrpID,TargetID,Signal,Avg_Num CSCH74_1_1,2007,61,256 CSCH74_1_1,212007,647,679 CSCH74_1_1,12007,3,32 CSCH74_1_1,207,299,777 I want the output as GrpID,TragetID,Signal-CSCH74_1_1,Avg_Num CSCH74_1_1,2007,61,256... (4 Replies)
Discussion started by: Vavad
4 Replies

9. Shell Programming and Scripting

Adding column

Hello, I'm struggling with the following problem in sh script: Adding a column to the right-end of a file ("master-file": non-constant column number, tab and linux formatted) where the column is the 4th one of file1 (space and DOS formatted) Changing the header of column 4 of file 1 at the... (4 Replies)
Discussion started by: lco
4 Replies

10. UNIX for Advanced & Expert Users

Adding a column of numbers

Hello, I have a file, and one column has both positive and negative numbers. Does anyone know how I can calculate the total of all the values (i.e, +ve and -ve). eg: col1 col2 col3 data 23 data data 76 data data -30 data Thanks Khoom (1 Reply)
Discussion started by: Khoomfire
1 Replies
Login or Register to Ask a Question