Sponsored Content
Top Forums UNIX for Advanced & Expert Users Want to get average value for each hour Post 302941292 by Don Cragun on Tuesday 14th of April 2015 08:17:34 PM
Old 04-14-2015
Quote:
Originally Posted by Saravanan_0074
I have received hourly average for using below script, but i need daily average value.

Code:
awk -F'|' 'NR>2 {hour=" " substr($2,1,2); array[$1 hour] += $3 count[$1 hour]++ } END { for (a in array) {print a, array[a]/count[a] } } ' filec | sort 
03/02/2015 00 26.2439
03/02/2015 01 25.3431
03/02/2015 02 24.7481
03/02/2015 03 26.6714
03/02/2015 04 10.4339
03/02/2015 05 17.3723
03/02/2015 06 17.5681
03/02/2015 07 23.8506
03/02/2015 08 14.3764
03/02/2015 09 15.7681
03/02/2015 10 18.7348
03/02/2015 11 20.1648
03/02/2015 12 22.8531
03/02/2015 13 22.2181
03/02/2015 14 16.4239
03/02/2015 15 25.3914
03/02/2015 16 20.2731
03/02/2015 17 12.3039
03/02/2015 18 17.9764
03/02/2015 19 22.6573
03/02/2015 20 15.7089
03/02/2015 21 32.6081
03/02/2015 22 17.2506
03/02/2015 23 21.6848

As mjf already said, why gather each hour's data and calculate an average of each input line if you're trying to calculate a daily average.

But, in addition to that, there aren't any | characters in your input. So, with -F'|' in your code, there is nothing in $2 nor in $3 in your input. And, there is no header in this data, so, unless you want to skip data from the midnight hour and the 1am hour data in your daily averages, you don't want the NR>2. And, as has been said before, if you're going to use a single line scrunched up awk script, you MUST separate statements from each other with semicolons. And, since you data appears to be in month/day/year format instead of year/month/day, you need to modify your sort if the goal is to print the output in increasing date order when you run this code with data from December in one year and January in the next year...

Perhaps you wanted something more like:
Code:
awk '{array[$1]+=$3;count[$1]++}END{for(a in array){print a,array[a]/count[a]}}' filec|sort -k1.7,1.10 -k1.1,1.2 -k1.4,1.5

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

1 Hour less

set DAY=`date +%y%m%d` set H=`date +%H` set M=`date +%M` mailx -s "$H-Mydata" myemail@mail.com<mydata I am looking to set the current hour to have 1 hour less in the subject header: For example: let's say the system time is 8 I want to have "7-Mydata" not "8-Mydata" Can some1... (6 Replies)
Discussion started by: bobo
6 Replies

2. UNIX for Dummies Questions & Answers

an hour less in 24 hour system

My program: __________________________________ #!/bin/ksh DAY=`date +%y%m%d` H=`date +%H` M=`date +%M` day=`date +%m/%d/%y` let h=$H-1 echo DAY $DAY echo H $H echo M $M echo day $day echo h $h _____________________________________ My result: (3 Replies)
Discussion started by: bobo
3 Replies

3. Shell Programming and Scripting

help in hour grep

i have this script that checks for yesterday date and also specific hour in that ----------------------------------------------------------------- TZ=`date +%Z`+24 ;a=`date +%Y-%m-%d %k` cd logs count=0 for i in DBMaint.log do cat $i | grep $a >> file12.txt done... (0 Replies)
Discussion started by: ali560045
0 Replies

4. Shell Programming and Scripting

Counting average data per hour

Hi i have log like this : Actually i will process the data become Anybody can help me ? (6 Replies)
Discussion started by: justbow
6 Replies

5. What is on Your Mind?

Power Hour?

I had some free time at work today so I decided to get a little practice with my shell scripts (I'm pretty new to the whole UNIX thing). I'm sure I'm not the only college student here so maybe this code will come in handy for future weekends. #!/bin/sh if then echo "No playlist... (0 Replies)
Discussion started by: thedoobieman5
0 Replies

6. Shell Programming and Scripting

Getting the last hour from a log.

I have a log like this: Jan 26 13:59:41 server2 ntpdate: step time server 91.189.94.4 offset 0.065456 sec Jan 26 13:59:41 server2 ntpd: ntpd 4.2.4p8@1.1612-o Fri Aug 6 22:49:54 UTC 2010 (1) Jan 26 13:59:41 server2 ntpd: precision = 1.000 usec Jan 26 13:59:41 server2 ntpd: ntp_io: estimated max... (2 Replies)
Discussion started by: Jotne
2 Replies

7. UNIX for Dummies Questions & Answers

Load average spikes once an hour

Hi, I am getting a high load average, around 7, once an hour. It last for about 4 minutes and makes things fairly unusable for this time. How do I find out what is using this. Looking at top the only thing running at the time is md5sum. I have looked at the crontab and there is nothing... (10 Replies)
Discussion started by: sm9ai
10 Replies

8. Shell Programming and Scripting

How to convert 24 hour time to 12 hour timing?

Hi friends, I want to convert 24 hour timing to 12 hour please help me... my data file looks like this.. 13-Nov-2011 13:27:36 15.32044 72.68502 13-Nov-2011 12:08:31 15.31291 72.69807 16-Nov-2011 01:16:54 15.30844 72.74028 15-Nov-2011 20:09:25 15.35096 ... (13 Replies)
Discussion started by: nex_asp
13 Replies

9. Shell Programming and Scripting

How to get next hour?

Hi guys I want any script to get me next hour For example Nexthour.sh 2013022823 It get me result 2013030100 Thanks a lot , I'm using Solaris 10 (5 Replies)
Discussion started by: teefa
5 Replies

10. Shell Programming and Scripting

Average of multiple time-stamped data every half hour

Hi All, Thank you for reading through my post and helping me figure out how I would be able to perform this task. For example: I have a list of continuous output collected into a file in the format as seen below: Date...........Time........C....A......... B ==========================... (5 Replies)
Discussion started by: terrychen
5 Replies
condor_userlog(1)					      General Commands Manual						 condor_userlog(1)

Name
       condor_userlog Display - and summarize job statistics from job log files.

Synopsis
       condor_userlog [-help] [-total | -raw] [-debug] [-evict] [-j cluster | cluster.proc] [-all] [-hostname] logfile ...

Description
       condor_userlog  parses  the  information  in job log files and displays summaries for each workstation allocation and for each job. See the
       manual page for condor_submiton page for instructions for specifying that Condor write a log file for your jobs.

       If -totalis not specified, condor_userlogwill first display a record for each workstation allocation, which includes the following informa-
       tion:

       Job

	  The cluster/process id of the Condor job.

       Host

	  The  host  where  the job ran. By default, the host's IP address is displayed. If -hostnameis specified, the host name will be displayed
	  instead.

       Start Time

	  The time (month/day hour:minute) when the job began running on the host.

       Evict Time

	  The time (month/day hour:minute) when the job was evicted from the host.

       Wall Time

	  The time (days+hours:minutes) for which this workstation was allocated to the job.

       Good Time

	  The allocated time (days+hours:min) which contributed to the completion of this job. If the job exited during the allocation, then  this
	  value  will  equal  ``Wall Time.'' If the job performed a checkpoint, then the value equals the work saved in the checkpoint during this
	  allocation. If the job did not exit or perform a checkpoint during this allocation, the value will be 0+00:00. This value can be greater
	  than	0  and	less  than ``Wall Time'' if the application completed a periodic checkpoint during the allocation but failed to checkpoint
	  when evicted.

       CPU Usage

	  The CPU time (days+hours:min) which contributed to the completion of this job.

       condor_userlogwill then display summary statistics per host:

       Host/Job

	  The IP address or host name for the host.

       Wall Time

	  The workstation time (days+hours:minutes) allocated by this host to the jobs specified in the query. By default, all jobs in the log are
	  included in the query.

       Good Time

	  The time (days+hours:minutes) allocated on this host which contributed to the completion of the jobs specified in the query.

       CPU Usage

	  The CPU time (days+hours:minutes) obtained from this host which contributed to the completion of the jobs specified in the query.

       Avg Alloc

	  The average length of an allocation on this host (days+hours:minutes).

       Avg Lost

	  The average amount of work lost (days+hours:minutes) when a job was evicted from this host without successfully performing a checkpoint.

       Goodput

	  This percentage is computed as Good Time divided by Wall Time.

       Util.

	  This percentage is computed as CPU Usage divided by Good Time.

       condor_userlogwill then display summary statistics per job:

       Host/Job

	  The cluster/process id of the Condor job.

       Wall Time

	  The total workstation time (days+hours:minutes) allocated to this job.

       Good Time

	  The total time (days+hours:minutes) allocated to this job which contributed to the job's completion.

       CPU Usage

	  The total CPU time (days+hours:minutes) which contributed to this job's completion.

       Avg Alloc

	  The average length of a workstation allocation obtained by this job in minutes (days+hours:minutes).

       Avg Lost

	  The average amount of work lost (days+hours:minutes) when this job was evicted from a host without successfully performing a checkpoint.

       Goodput

	  This percentage is computed as Good Time divided by Wall Time.

       Util.

	  This percentage is computed as CPU Usage divided by Good Time.

       Finally, condor_userlogwill display a summary for all hosts and jobs.

Options
       -help

	  Get a brief description of the supported options

       -total

	  Only display job totals

       -raw

	  Display raw data only

       -debug

	  Debug mode

       -j

	  Select a specific cluster or cluster.proc

       -evict

	  Select only allocations which ended due to eviction

       -all

	  Select all clusters and all allocations

       -hostname

	  Display host name instead of IP address

General Remarks
       Since  the Condor job log file format does not contain a year field in the timestamp, all entries are assumed to occur in the current year.
       Allocations which begin in one year and end in the next will be silently ignored.

Exit Status
       condor_userlogwill exit with a status value of 0 (zero) upon success, and it will exit with the value 1 (one) upon failure.

Author
       Condor Team, University of Wisconsin-Madison

Copyright
       Copyright (C) 1990-2012 Condor Team, Computer Sciences Department, University of  Wisconsin-Madison,  Madison,  WI.  All  Rights  Reserved.
       Licensed under the Apache License, Version 2.0.

       See the Condor Version 7.8.2 Manualor http://www.condorproject.org/licensefor additional notices. condor-admin@cs.wisc.edu

								  September 2012						 condor_userlog(1)
All times are GMT -4. The time now is 04:30 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy