The UNIX and Linux Forums  
Hej og Velkommen fra USA til UNIX og Linux Forums! Tak for dit besøg og deltager i vores globale samfund.

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



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
Hvordan læser man kolonnen og udskrive værdier under denne kolonne gemini106 Shell Programmering og Scripting 6 03-28-2008 07:05 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
Brug awk at beregne gennemsnit af kolonne 3 grossgermany UNIX for dummyer Spørgsmål & svar 6 07-27-2007 01:29 PM
beregne gennemsnit af kolonne 2 onthetopo UNIX for dummyer Spørgsmål & svar 0 07-06-2007 08:16 PM
Hvordan beregner jeg procent? the_learner Højtstående Programmering 6 04-18-2007 04:40 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 Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 08-29-2008
saleru_raja saleru_raja is offline
Registreret Bruger
  
 

Join Date: Aug 2008
Stillinger: 2
Hvordan man beregner, hvor stor en procentdel af værdier i kolonnen

Hej, Jeg har den fil, der indeholder følgende to kolonner.
518 _factorial
256 _main
73 _atol
52 ___do_global_ctors
170 ___main
52 ___do_g
Hvordan kan man beregne, hvor stor en procentdel af hver enkelt værdi i første kolonne?
først nødt til at få summen af de første kolonne og derefter hver værdi er kløft ved summen og gange med 100 for at få procent.
Hvordan kan vi skrive script for det?

Thanks and Regards
Raja
  #2 (permalink)  
Old 08-29-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Join Date: May 2008
Location: Sydney, Australien
Stillinger: 1009
Prøv dette:

Code:
awk '
        NR > max { max=NR }
        { tot+=$1; v[NR]=$1; d[NR]=$2 }
        END { for (i=1; i<=max; i++) { print v[i]*100/tot,v[i],d[i] } }

' inputfile
Det udskriver% som den første kolonne.
  #3 (permalink)  
Old 08-29-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: Feb 2007
Indlæg: 4.294
En anden tilgang:

Code:
awk 'NR==FNR{t+=$1;next}{printf("%.2f %s\n", $1/t*100, $2)}' file file
Hilsen
  #4 (permalink)  
Old 08-29-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Join Date: May 2008
Location: Sydney, Australien
Stillinger: 1009
Jep, det er meget neater.
Closed Thread

Bogmærker

Tags
procentdel kolonner

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 11:08 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0