The UNIX and Linux Forums  

Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
Domein niet opgelost uit script Sergiu-IT IP Networking 6 04-11-2008 06:52
Kudda heeft met succes opgelost het downloaden problemen voor vele video web angelstar UNIX-en Linux-toepassingen 0 04-10-2008 06:41
Xdmcp, dns, overschrijden uitzending opgelost MAAR kymberm IP Networking 3 02-25-2003 10:47 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 11-07-2005
MSKCC mskcc is offline
Geregistreerde gebruiker
  
 

Join Date: juli 2005
Posts: 37
kan dit opgelost met awk en sed?

Hi Masters,


Code:
___________________________________________________________________________________
Group of orthologs #1. Best score 3010 bits
Score difference with first non-orthologous sequence - yeast:3010   human:2754
YHR165C             	100.00%		PRP8_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #2. Best score 2100 bits
Score difference with first non-orthologous sequence - yeast:2033   human:1978
YLR106C             	100.00%		MDN1_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #3. Best score 2082 bits
Score difference with first non-orthologous sequence - yeast:997   human:593
YJL130C             	100.00%		PYR1_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #4. Best score 1959 bits
Score difference with first non-orthologous sequence - yeast:1959   human:1007
YKR054C             	100.00%		DYHC_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #5. Best score 1855 bits
Score difference with first non-orthologous sequence - yeast:1855   human:1022
YNR016C             	100.00%		Q6KE87_HUMAN        	100.00%
YMR207C             	19.86%		COA2_HUMAN          	90.52%
                    	       		COA1_HUMAN          	53.30%
___________________________________________________________________________________
Group of orthologs #6. Best score 1838 bits
Score difference with first non-orthologous sequence - yeast:1748   human:1767
YDL140C             	100.00%		RPB1_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #7. Best score 1768 bits
Score difference with first non-orthologous sequence - yeast:1768   human:1636
YJR066W             	100.00%		Q4LE76_HUMAN        	100.00%
YKL203C             	49.22%

Boven records zijn deel van een bestand. Wat ik moet doen, is voor het uitlezen van de gegevens uit dit bestand en zet ze in een speadsheet formaat, als volgt: (voorbeelden uit # 5 en # 7 hierboven)

Group_number; Best_Score; S_one; P_one; S_two; P_two
5; 1855; YNR016C; 100,00%; Q6KE87_HUMAN; 100,00%
5; 1855; YMR207C; 19,86%; COA2_HUMAN; 90,52%
5; 1855;;; COA1_HUMAN; 53,30%
7; 1768; YJR066W; 100,00%; Q4LE76_HUMAN; 100,00%
7; 1768; YKL203C; 49%;

Thanks in advance!

Laatst gewijzigd door Perderabo; op 11.08.2005 11:41.. Reden: Voeg code tags en uitschakelen smilies voor leesbaarheid
  #2 (permalink)  
Old 11-08-2005
Abhishek Ghose Abhishek Ghose is offline
Geregistreerde gebruiker
  
 

Join Date: Sep 2005
Locatie: Chennai
Posts: 81
Kijk naar het voorbeeld gegeven:
Als de laatste regel van 5 wordt weergegeven als "5; 1855;;; COA1_HUMAN; 53,30%"
shouldnt de laatste regel van 7 worden weergegeven als "7; 1768;;; YKL203C; 49%" in plaats van "7; 1768; YKL203C; 49%;"?
  #3 (permalink)  
Old 11-08-2005
MSKCC mskcc is offline
Geregistreerde gebruiker
  
 

Join Date: juli 2005
Posts: 37
thx

Nee, de originele bestand was

leeg leeg record record voor # 5
Record Record leeg leeg # 7.

Toen ik rapporteerde de dossiers, de lege ruimten werden gemist. Maar het moet worden gewonnen als een lege ruimte. Nogmaals bedankt.
  #4 (permalink)  
Old 11-09-2005
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Locatie: Ashburn, Virginia
Berichten: 9.131
Dit is moeilijker dan het lijkt, omdat gebieden worden gedefinieerd door zowel syntaxis en positie. Hier is een ksh script dat werkt met uw monster gegevens. Maar alle verrassingen in uw echte gegevens kunnen breken.

Code:
#! /usr/bin/ksh

IFS=""
while read line ; do
    line=${line##+(_)}
    ((${#line})) ||  continue
    if [[ "$line" != "Group of orthologs"* ]] ; then
        echo error looking for start of record 1>&2
        echo $line  1>&2
        exit 1
    fi
    line=${line#"Group of orthologs #"}
    Group_number=${line%%\.*}
    line=${line#*"Best score "}
    Best_Score=${line%" "*}
    read line
    if [[ $line != "Score difference with "* ]] ; then
        echo "error stepping over 2nd line of group $Group_number" 1>&2
        echo $line  1>&2
        exit 1
    fi
    ProteinLines=1
    while ((ProteinLines)) ; do
        if read line ; then
            line=${line##+(_)}
            if ((!${#line})) ; then
                ProteinLines=0
            else
                eval set $line
                firstchar="${line%${line#?}}"
                if [[ $# -eq 4 ]] ; then
                    S_one=$1
                    P_one=$2
                    S_two=$3
                    P_two=$4
                else
                    if [[ $firstchar = [a-zA-Z0-9] ]] ; then
                        S_one=$1
                        P_one=$2
                        S_two=""
                        P_two=""
                    else
                        S_one=""
                        P_one=""
                        S_two=$1
                        P_two=$2
                    fi
                fi
                echo "${Group_number};${Best_Score};${S_one};${P_one};${S_two};${P_two};"
            fi
        else
            ProteinLines=0
        fi
    done
done
exit 0


Code:
$
$ ./pro < data
1;3010;YHR165C;100.00%;PRP8_HUMAN;100.00%;
2;2100;YLR106C;100.00%;MDN1_HUMAN;100.00%;
3;2082;YJL130C;100.00%;PYR1_HUMAN;100.00%;
4;1959;YKR054C;100.00%;DYHC_HUMAN;100.00%;
5;1855;YNR016C;100.00%;Q6KE87_HUMAN;100.00%;
5;1855;YMR207C;19.86%;COA2_HUMAN;90.52%;
5;1855;;;COA1_HUMAN;53.30%;
6;1838;YDL140C;100.00%;RPB1_HUMAN;100.00%;
7;1768;YJR066W;100.00%;Q4LE76_HUMAN;100.00%;
7;1768;YKL203C;49.22%;;;
$

  #5 (permalink)  
Old 11-09-2005
Abhishek Ghose Abhishek Ghose is offline
Geregistreerde gebruiker
  
 

Join Date: Sep 2005
Locatie: Chennai
Posts: 81
Heres met commandoregelprogramma PERL:

$ perl -ne 'hakken; gesplitst;
> If ($ _ [0] eq "Groep")
> ($ Groep \u003d substr ($ _ [3], 1, length ($ _ [3]) -2); $ score \u003d $ _ [6];)
> Else (
> If ($ _! ~ / ^ \ S *$/&&$_[ 0] ne "Score")
> (If (@_\u003d\u003d 2) (push (@_,"","");}
> Als (@_\u003d\u003d 3) (unshift (@_,"");}
> $ String \u003d meedoen (";",@_);
> Print ( "\ n $ groep; $ gast; $ string ");}}' bestandsnaam


Aanname (s):
Uw administratie kan hebben slechts 4 elementen op het maximum.
Dat is,
record / blanco record / blanco record / blanco record / blank
Als u mij vertellen of deze tab gescheiden, ik kan helpen met een meer robuuste code.
  #6 (permalink)  
Old 11-09-2005
Abhishek Ghose Abhishek Ghose is offline
Geregistreerde gebruiker
  
 

Join Date: Sep 2005
Locatie: Chennai
Posts: 81
En als Perderabo zegt, een echte verrassingen in de gegevens kunnen breken!
(Merk op dat Perderabos' code genereert volgnullen kommapunt die u waarschijnlijk niet nodig)
Closed Thread

Bladwijzers

Labels
linux

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 08:31 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0