Sponsored Content
Top Forums Shell Programming and Scripting Script for identifying and deleting dupes in a line Post 302608064 by gimley on Friday 16th of March 2012 04:35:23 AM
Old 03-16-2012
Script for identifying and deleting dupes in a line

I am compiling a synonym dictionary which has the following structure
Headword=Synonym1,Synonym2 and so on, with each synonym separated by a comma.
As is usual in such cases manual preparation of synonyms results in repeating the synonym which results in dupes as in the example below:
Code:
arrogance=affectation,affected manners,airs,array,boastfulness,boasting,bombast,braggadocio,bravado,brazenness,bumptiousness,conceit,contempt,contemptuousness,contumeliousness,contumely,coxcombry,crowing,dandyism,dash,disdain,disdainfulness,display,egotism,fanfare,fanfaronade,fatuousness,flourish,foppery,foppishness,frills and furbelows,frippery,gall,getting on one's high horse,glitter,gloating,haughtiness,hauteur,high notions,highfalutin' ways,loftiness,nerve,ostentation,overconfidence,pageantry,panache,parade,pomp,pomposity,pompousness,presumption,presumptuousness,pretension,pretentiousness,pride,putting on the dog,putting one's nose in the air,scorn,scornfulness,self-importance,shamelessness,show,showiness,affected manners,airs,array,snobbery,snobbishness,superciliousness,swagger,vainglory,vanity,affected manners

As can be seen
affected manners
is repeated and so are quite a few other synonyms.
I had written a script which basically does the following:
places each synonym on a line by replacing the comma by a CR/LF
sorting the synonym set
replacing the sorted unique synonyms in the structure Headword=syn1,syn2 etc.
Although it works, it is expensive and time consuming considering that the number of synonym sets is around 100,00
A perl or awk script which does the job faster would be really appreciated. Please note that a given headword can admit upto 100 synonyms, each separated by a comma.
Many thanks for a faster solution.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

identifying duplicates line & reporting their line number

I need to find to find duplicate lines in a document and then print the line numbers of the duplicates The files contain multiple lines with about 100 numbers on each line I need something that will output the line numbers where duplicates were found ie 1=5=7, 2=34=76 Any suggestions would be... (5 Replies)
Discussion started by: stresslog
5 Replies

2. Shell Programming and Scripting

Shell Script for deleting the first line in a file

Hi, Could any one please post the shell script for deleting the first line in a file? (3 Replies)
Discussion started by: badrimohanty
3 Replies

3. Shell Programming and Scripting

Deleting a line from a flatfile using Shell Script

Hi All, Can Anyone please tell me,how can I delete a line from a file. I am reading the file line by line using whil loop and validating each line..Suppose in the middle i found a particular line is invalid,i need to delete that particular line. Can anyone please help. Thanks in advance,... (14 Replies)
Discussion started by: dinesh1985
14 Replies

4. Shell Programming and Scripting

Using an awk script to identify dupes in two files

Hello, I have two files. File1 or the master file contains two columns separated by a delimiter: a=b b=d e=f g=h File 2 which is the file to be processed has only a single column a h c b What I need is an awk script to identify unique names from file 2 which are not found in the... (6 Replies)
Discussion started by: gimley
6 Replies

5. Shell Programming and Scripting

deleting dupes in a row

Hello, I have a large database in which name homonyms are arranged in a row. Since the database is large and generated by hand, very often dupes creep in. I want to remove the dupes either using an awk or perl script. An input is given below The expected output is given below: As can be... (2 Replies)
Discussion started by: gimley
2 Replies

6. UNIX for Dummies Questions & Answers

Deleting a pattern in UNIX without deleting the entire line

Hi I have a file: r58778.3|SOURCES={KEY=f665931a...,fw,221-705}|ERRORS={16_1:T,30_1:T,56_1:C,57_1:T,59_1:A,101_1:A,115:-,158_1:C,186_1:A,204:-,271_1:T,305:-,350_1:C,368_1:G,442_1:C,472_1:G,477_1:A}|SOURCE_1="Contig_1092402550638"(f665931a359e36cea0976db191ff60ff09cc816e) I want to retain... (15 Replies)
Discussion started by: Alyaa
15 Replies

7. Shell Programming and Scripting

Identifying dupes within a database and creating unique sub-sets

Hello, I have a database of name variants with the following structure: variant=variant=variant The number of variants can be as many as thirty to forty. Since the database is quite large (at present around 60,000 lines) duplicate sets of variants creep in. Thus John=Johann=Jon and... (2 Replies)
Discussion started by: gimley
2 Replies

8. Shell Programming and Scripting

Help with Perl script for identifying dupes in column1

Dear all, I have a large dictionary database which has the following structure source word=target word e.g. book=livre Since the database is very large in spite of all the care taken, it so happens that at times the source word is repeated e.g. book=livre book=tome Since I want to... (7 Replies)
Discussion started by: gimley
7 Replies

9. Shell Programming and Scripting

Modify script to remove dupes with two delimiters

Hello, I have a script which removes duplicates in a database with a single delimiter = The script is given below: # script to remove dupes from a row with structure word=word BEGIN{FS="="} {for(i=1;i<=NF;i++){a++;}for(i in a){b=b"="i}{sub("=","",b);$0=b;b="";delete a}}1 How do I modify... (6 Replies)
Discussion started by: gimley
6 Replies

10. Shell Programming and Scripting

sed command within script wrongly deleting the last line

Hi, I have a shell script which has a for loop that scans list of files and do find and replace few variables using sed command. While doing this, it deletes the last line of all input file which is something wrong. how to fix this. please suggest. When i add an empty line in all my input file,... (5 Replies)
Discussion started by: rbalaj16
5 Replies
Bio::Phenotype::MeSH::Term(3pm) 			User Contributed Perl Documentation			   Bio::Phenotype::MeSH::Term(3pm)

NAME
Bio::Phenotype::MeSH::Term - A MeSH term SYNOPSIS
use Bio::Phenotype::MeSH::Term; # create a term object my $term = Bio::Phenotype::MeSH::Term->new (-id => 'D000001', -name => 'Dietary Fats', -description => 'dietary fats are...' ); # get a Bio::Phenotype::MeSH::Twig somehow... $term->add_twig($twig1); DESCRIPTION
This class keeps information about MeSH terms. MeSH stands for Medical Subject Headings and is one of the ways for annotaing biomedical literature. The terminology is maintained by National Library of Medicine of USA . See http://www.nlm.nih.gov/mesh/meshhome.html. In addition to id, name and description a term can know about its surrounding terms (Bio::Phenotype::MeSH::Twig) in the term hierarchy. This class is mainly used from Bio::DB::MeSH which retrieves terms over the Web. SEE ALSO
Bio::DB::MeSH, Bio::Phenotype::MeSH::Twig FEEDBACK
Mailing Lists User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing lists Your participation is much appreciated. bioperl-l@bioperl.org - General discussion http://bioperl.org/wiki/Mailing_lists - About the mailing lists Support Please direct usage questions or support issues to the mailing list: bioperl-l@bioperl.org rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible. Reporting Bugs report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via the web: https://redmine.open-bio.org/projects/bioperl/ AUTHOR
Heikki Lehvaslaiho, heikki-at-bioperl-dot-org APPENDIX
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _ id Title : id Usage : $obj->id( "r1" ); or print $obj->id(); Function: Set/get for the id. Returns : A id [scalar]. Args : A id [scalar] (optional). name Title : name Usage : $obj->name( "r1" ); or print $obj->name(); Function: Set/get for the name. Returns : A name [scalar]. Args : A name [scalar] (optional). description Title : description Usage : $obj->description( "r1" ); or print $obj->description(); Function: Set/get for the description. Returns : A description [scalar]. Args : A description [scalar] (optional). add_synonym Title : add_synonym Usage : $obj->add_synonym( @synonyms ); or $obj->add_synonym( $synonym ); Function: Pushes one or more synonyms for the term term into the list of synonyms. Returns : Args : scalar(s). each_synonym Title : each_synonym() Usage : @gs = $obj->each_synonym(); Function: Returns a list of gene symbols [scalars, most likely Strings] associated with this phenotype. Returns : A list of scalars. Args : purge_synonyms Usage : $obj->purge_synonym(); Function: Deletes the list of synonyms to this term. Returns : A list of scalars. Args : Twig management Each MeSH term belongs to a complex tree like hierarchy of terms where each term can appear multiple times. The immediately surrounding nodes of the tree are modelled in twigs. See: Bio::Phenotype::MeSH::Twig. add_twig Title : add_twig Usage : $obj->add_twig( @twigs ); or $obj->add_twig( $twig ); Function: Pushes one or more twig term names [scalars, most likely Strings] into the list of twigs. Returns : Args : scalar(s). each_twig Title : each_twig() Usage : @gs = $obj->each_twig(); Function: Returns a list of gene symbols [scalars, most likely Strings] associated with this phenotype. Returns : A list of scalars. Args : purge_twigs Usage : $obj->purge_twig(); Function: Deletes the list of twigs associated with this term. Returns : A list of scalars. Args : each_parent Title : each_parent() Usage : @gs = $obj->each_parent(); Function: Returns a list of names of parents for this term Returns : A list of scalars. Args : perl v5.14.2 2012-03-02 Bio::Phenotype::MeSH::Term(3pm)
All times are GMT -4. The time now is 11:11 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy