![]() |
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Regler | Links | Albums | FAQ | Members List | Kalender | Søgning | Dagens Stillinger | Mark Forums Read |
| Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her. |
Mere UNIX og Linux Forum Emner du måske kan finde Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Last Post |
| Find summen af en kolonne ved hjælp awk | ironhead3fan | Shell Programmering og Scripting | 8 | 01-30-2009 06:59 AM |
| Sådan kontrolleres Null-værdier i en fil kolonne efter kolonne, hvis kolonnerne er ikke NULLs | Mandab | Shell Programmering og Scripting | 7 | 03-15-2008 09:57 AM |
| finde duplikateksemplaret filer efter størrelse og finde mønstertilpasning og tælle | jerome Sukumar | Shell Programmering og Scripting | 2 | 12-01-2006 04:20 AM |
| Erstat 10. kolonne med en ny kolonne --- Terriblly travlt | ahmedwaseem2000 | Shell Programmering og Scripting | 2 | 09-06-2005 01:10 AM |
| Find en kolonne i en flatfile | peter.herlihy | UNIX for dummyer Spørgsmål & svar | 3 | 01-07-2002 08:08 PM |
![]() |
|
|
LinkBack | Thread Tools | Søg denne tråd | Rate Thread | Display Modes |
|
|
|
||||
|
Finde den mest fælles ind i en kolonne
Hej,
Jeg har en fil med 3 kolonner i det, der er kommasepareret, og det har omkring 5.000 linier. Hvad jeg vil gøre, er at finde de mest almindelige værdi i kolonne 3 bruger awk eller et shell script eller hvad det virker! Jeg er fuldstændig i stå på, hvordan du gør dette. f.eks værdi1, værdi2, Bob værdi1, værdi2, Bob værdi1, værdi2, Bob værdi1, værdi2, dave værdi1, værdi2, James Klart i ovenstående eksempel de mest populære værdi i kolonne3 er "Bob", men hvordan vil jeg skrive et script til at arbejde her? Mange tak |
|
||||
|
awk
Hej,
Dette bør man også være ok for dig. Faktisk er dette tilfælde involveret persormance spørgsmål, da din fil er thousound og hunderds linjer. Så svært logik vil få andet resultat. For at være ærlig, har jeg kun vide, hvordan du får det resultat, men jeg har ingen idé om at give en højtydende kode. Så Du må hellere spørge nogle eksperter om hjælp. Her kommer min kode: Code:
awk 'BEGIN{
FS=","
n=0
}
{
sum[$3]++
if (sum[$3]>n)
{
n=sum[$3]
m=$3
}
}
END{
print m
}' filename
|
![]() |
| Bogmærker |
| Thread Tools | Søg denne tråd |
| Display Modes | Bedøm denne tråd |
|
|