Delete numbers in the tables column
2
1
Entering edit mode
6.3 years ago

Hi All,

I have a table with six columns (in the following).

enter image description here

So, I want to delete SNPs that are less than number 10 in the SNP column.

What is the best idea?

Best Regard

Mostafa

R • 2.1k views
ADD COMMENT
0
Entering edit mode
ADD REPLY
6
Entering edit mode
6.3 years ago

awk !

a cmdline such as below one should do the trick:

awk ' $4 >= 10' <table-file> > new_file

and if you want to (additionally) apply calculations on a certain column:

awk ' $4 >= 10' <table-file> | awk '$2=$2+2000' > new_file
ADD COMMENT
5
Entering edit mode
6.3 years ago
Prakash ★ 2.2k

Read the file, and filter out any row where SNP column is more than or equal to 10:

data <- read.table("SNP.txt", header = TRUE)
data <- data[ data$SNP >= 10, ])

To exclude 1st BP column, and to add 20KB to BP column:

data <- data[ , -3 ]
data$BP <- data$BP + 20000
ADD COMMENT
0
Entering edit mode

many thanks for your reply,

I could do it.

Now, I have two BP columns.

First I want to delete one of them. And the second, I want to add 20,000 to each of the numbers in the first BP column.

What is the best idea?

ADD REPLY
0
Entering edit mode

awk again ;)

pretty nifty stuff awk

ADD REPLY
0
Entering edit mode

yes, now i want to add amount 20,000 to each of the numbers in the first BP column.

for example:

1+20000
20001+20000
40001+20000
.
.
.
ADD REPLY
1
Entering edit mode

You can add other operations to the cmdline I provided earlier (or do it in one go even). I'll split it up in separate operations for increased readability and understanding

awk ' $4 >= 10' <table-file> | awk '$2=$2+2000' > new_file
ADD REPLY
0
Entering edit mode

See edit, answer updated.

ADD REPLY
0
Entering edit mode

why fire up R while you can simply do this command line? ;-)

ADD REPLY
1
Entering edit mode

Maybe because some are more comfortable in R world. Please add your comments regarding +20KB, to your answer, so that your answer is complete.

ADD REPLY
0
Entering edit mode

OK, added it (though the question on the +20K was part of this thread).

and, OK, point taken.

ADD REPLY

Login before adding your answer.

Traffic: 1888 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6