Sponsored Content
Full Discussion: "Smoothing" the data
Top Forums UNIX for Dummies Questions & Answers "Smoothing" the data Post 302596532 by Corona688 on Tuesday 7th of February 2012 05:22:36 PM
Old 02-07-2012
Surely there's a way to do that with awk. awk doesn't have a single function for it of course, since it doesn't make much sense to do a boxcar average on a single line...

Let me see if I have the algorithm right. For these points:

Code:
1
5
2
6
3
7
4
8
5
9

for a boxcar average of width 3, would you want:

Code:
(1+5+2)/3, (5+2+6)/3, (2+6+3)/3, (6+3+7)/3, (3+7+4)/3, (7+4+8)/3, (4+5+5)/3, (8+5+9)/3

---------- Post updated at 04:22 PM ---------- Previous update was at 04:10 PM ----------

Code:
$ cat data
1
5
2
6
3
7
4
8
5
9

$ cat smooth.awk

BEGIN { WIDTH=3 }

{       DATA[(++N)%WIDTH]=$1    }

(N>=WIDTH) {
        V=0
        for(X=(N+1); X<=(N+WIDTH); X++)
                V+=DATA[X%WIDTH];

        print V/WIDTH;
}

$ awk -f smooth.awk data
2.66667
4.33333
3.66667
5.33333
4.66667
6.33333
5.66667
7.33333
4.66667

$


Last edited by Corona688; 02-07-2012 at 06:20 PM..
This User Gave Thanks to Corona688 For This Post:
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

Hi Friends, Can any of you explain me about the below line of code? mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'` Im not able to understand, what exactly it is doing :confused: Any help would be useful for me. Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies

2. Shell Programming and Scripting

cat $como_file | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g'

hi All, cat file_name | awk /^~/'{print $1","$2","$3","$4}' | sed -e 's/~//g' Can this be done by using sed or awk alone (4 Replies)
Discussion started by: harshakusam
4 Replies

3. Shell Programming and Scripting

ps -ef | grep "string1" "string2" " "string3"

Hi all, can any one suggest me the script to grep multiple strings from ps -ef pls correct the below script . its not working/ i want to print OK if all the below process are running in my solaris system. else i want to print NOT OK. bash-3.00$ ps -ef | grep blu lscpusr 48 42 ... (11 Replies)
Discussion started by: steve2216
11 Replies

4. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

5. Shell Programming and Scripting

how to use "cut" or "awk" or "sed" to remove a string

logs: "/home/abc/public_html/index.php" "/home/abc/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" "/home/xyz/public_html/index.php" how to use "cut" or "awk" or "sed" to get the following result: abc abc xyz xyz xyz (8 Replies)
Discussion started by: timmywong
8 Replies

6. Solaris

The slices "usr", "opt", "tmp" disappeared!!! Help please.

The system don't boot. on the screen appears following: press enter to maintenance (or type CTRL-D to continue)...I checked with format command. ... the slices "0-root","1-swap","2-backup" exist. ...the slises "3-var","6-usr" -unassigned. :( (16 Replies)
Discussion started by: wolfgang
16 Replies

7. UNIX for Dummies Questions & Answers

Using "mailx" command to read "to" and "cc" email addreses from input file

How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address and column 3 contains “cc” e-mail address to include with same email. Sample input file, email.txt Below is an sample code where... (2 Replies)
Discussion started by: asjaiswal
2 Replies

8. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

Hello. System : opensuse leap 42.3 I have a bash script that build a text file. I would like the last command doing : print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt where : print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies

9. AIX

Apache 2.4 directory cannot display "Last modified" "Size" "Description"

Hi 2 all, i have had AIX 7.2 :/# /usr/IBMAHS/bin/apachectl -v Server version: Apache/2.4.12 (Unix) Server built: May 25 2015 04:58:27 :/#:/# /usr/IBMAHS/bin/apachectl -M Loaded Modules: core_module (static) so_module (static) http_module (static) mpm_worker_module (static) ... (3 Replies)
Discussion started by: penchev
3 Replies
OIDUA(1)						      General Commands Manual							  OIDUA(1)

NAME
oidua - audio file metadata lister SYNOPSIS
oidua [options] directory [...] DESCRIPTION
lists meta data of audio files. What information and how it is presented is customizable. It is possible to format output in csv, html, xml or for human beings. OPTIONS
-B, --bg COLOR Set HTML background color -D, --date Display datestamp header --debug Output debug trace to stderr -e, --exclude DIRECTORY Exclude directory from search -f, --file FILE write output to file -h, --help Display help message -H, --html HTML output --ignore-bad Don't list files that cause Audiotype failure -i, --ignore-case Case-insensitive directory sorting -I, --indent N Set indent to N -m, --merge Merge identical directories Basedirs with identical names are merged. This Means that all their subdirs are considered being subdirs of a single directory, and therefore sorted and displayed together. If there are duplicate names among the subdirs then those are also merged. -o, --output STRING Set output format to STRING Anything enclosed by brackets is considered a field. A field must have the following syntax: [TAG] [TAG,WIDTH] [TAG,WIDTH,SUFFIX] [TAG,SUFFIX] TAG is any of the following characters: a list of bitrates in Audiolist compatible format b bitrate with suffix (i.e. 192k) B bitrate in bps d depth; distance from respective basedir f number of audio files (including spacers) l length in minutes and seconds L length in seconds m time of last change M time of last change in seconds since the epoch n directory name (indented) N directory name p profile P full path q quality s size with suffix (i.e. 65.4M) S size in bytes t file type T bitrate type: ~ mixed files C constant bitrate L lossless compression V variable bitrate WIDTH defines the exact width of the field. The output is cropped to this width if needed. Negative values will give left aligned output. Cropping is always done on the right. SUFFIX lets you specify a unit to be concatenated to all non-empty data. Other interpreted sequences are: [ [ ] ] new line tab character Unescaped brackets are forbidden unless they define a field. Note: If you have any whitespace in your output string you must put it inside quotes or otherwise it will not get parsed right. -q, --quiet Omit progress indication -s, --strip Strip output of field headers and empty directories -S, --stats Display statistics results -t, --time Display elapsed time footer -T, --text COLOR Set HTML text color -V, --version Display version -w, --wildcards Expand wildcards in basedirs REPORTING BUGS
Report bugs to Sylvester Johansson <sylvestor@telia.com> SEE ALSO
http://oidua.suxbad.com/ AUTHOR
oidua was written by Sylvester Johansson and Mattias Paeivaerinta This manual page was written by Erik Wenzel <erik@debian.org> for the Debian GNU/Linux system (but may be used by others). May 15, 2007 OIDUA(1)
All times are GMT -4. The time now is 12:15 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy