Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • bioman1
    started a topic GFF editing-Perl, awk

    GFF editing-Perl, awk

    I would like to get the help of computer experts, in editing my GFF file

    Code:
    ##fsdfsd
    ##sdd-ver gen 5.5.7
    Xm Gen CDS     1       148     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     149     193     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     194     279     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     280     412     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     413     499     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     500     702     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen extracted region        1       148     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="437225 <- 437372";ID=Bm
    Xm Gen extracted region        149     193     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="436969 <- 437013";ID=Bm
    Xm Gen extracted region        194     279     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="435418 <- 435503";ID=Bm
    Xm Gen extracted region        280     412     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="435209 <- 435341";ID=Bm
    Xm Gen extracted region        413     499     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="434376 <- 434462";ID=Bm
    Xm Gen extracted region        500     702     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="434084 <- 434286";ID=Bm
    Replace (Xm Gen CDS) rows with values present in (Xm Gen extracted region) rows. i.e first row ($4 column:1 is replaced with 437225 value and $5 column:148 is replaced with 437372, in row 2 ($4 column:149 replaced with 436969, $5 column:193 replaced with 437013 and so on) and print output like below

    Code:
    ##gff-version 2
    ##source-version geneious 5.5.7
    Xm Gen CDS     437225       437372     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     436969     437013     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     435418     435503     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     435209     435341     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     434376     434462     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen CDS     434084     434286     .       +       .       Name=;created by=User;modified by=User;ID=Bm
    Xm Gen extracted region        1       148     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="437225 <- 437372";ID=Bm
    Xm Gen extracted region        149     193     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="436969 <- 437013";ID=Bm
    Xm Gen extracted region        194     279     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="435418 <- 435503";ID=Bm
    Xm Gen extracted region        280     412     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="435209 <- 435341";ID=Bm
    Xm Gen extracted region        413     499     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="434376 <- 434462";ID=Bm
    Xm Gen extracted region        500     702     .       +       .       Name=Extracted region from gi|371442828|gb|JH557032.1|;Extracted interval="434084 <- 434286";ID=Bm

    I have used grep & sed commands as below.

    head -2 file
    join <(grep "Xm Gen CDS" file | cat -n) \
    <(grep "Xm Gen extracted region" file | cat -n) | \
    sed 's/^[0-9]* //;s/CDS [0-9]*\s[0-9]*\(\s.*interval="\([0-9]*\)\s<-\s\([0-9]*\)\)/CDS\t\2\t\3\t\1/;s/ Xm Gen extracted.*//'
    grep "Xm Gen extracted region" file


    But I would like convert this to shell script like get input from the user and give as desired by the user.
    Any perl script is appreciated.

Latest Articles

Collapse

  • seqadmin
    Recent Advances in Sequencing Technologies
    by seqadmin



    Innovations in next-generation sequencing technologies and techniques are driving more precise and comprehensive exploration of complex biological systems. Current advancements include improved accessibility for long-read sequencing and significant progress in single-cell and 3D genomics. This article explores some of the most impactful developments in the field over the past year.

    Long-Read Sequencing
    Long-read sequencing has seen remarkable advancements,...
    12-02-2024, 01:49 PM

ad_right_rmr

Collapse

News

Collapse

Topics Statistics Last Post
Started by seqadmin, 12-02-2024, 09:29 AM
0 responses
158 views
0 likes
Last Post seqadmin  
Started by seqadmin, 12-02-2024, 09:06 AM
0 responses
56 views
0 likes
Last Post seqadmin  
Started by seqadmin, 12-02-2024, 08:03 AM
0 responses
48 views
0 likes
Last Post seqadmin  
Started by seqadmin, 11-22-2024, 07:36 AM
0 responses
76 views
0 likes
Last Post seqadmin  
Working...
X