Hi ! whether it is possible to do interpolation in scripting...


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Hi ! whether it is possible to do interpolation in scripting...
# 1  
Old 12-04-2012
Hi ! whether it is possible to do interpolation in scripting...

Hi ! Experts...

I just wanted to know whether it is possible in scripting...to do interpolation....

if so....have a look on my data file

I need temperature and salinity value with a bin size of 0.5 m

output looks somewhat like this

Code:
dep   temp  sal
0.5     25     0.077
1        25     0.077
1.5
2
2.5
-
-
-
8.5     25     0.16

Note : one more thing here same dep value (0.789) repeated for around 22 rows so average of temperature and salinity should be taken, so whenever backward derivative equal to forward derivative average of temperature and salinity should be taken something like this
Code:
                mask  depth
1:   .... 1:  1.000  0.789  ---backward derivative
2     /   2:  1.000  0.789  ---forward derivative
3     /   3:  1.000  0.789
4     /   4:  1.000  0.789
5     /   5:  1.000  0.789
23    /  23:   ....    0.789
24    /  24:   ....    0.790
25    /  25: 1.000 0.790
26    /  26: 1.000 0.790

Here I am not completing asking you people to do the script for interpolation at least if you can able to do the averaging of temperature and salinity by checking forward and backward derivative it would be very helpful for me.

Last edited by Scrutinizer; 12-04-2012 at 06:12 PM.. Reason: Removed some really really really spurious formatting
# 2  
Old 12-04-2012
I don't understand what you're trying to achieve. Could you please explain a bit more.
# 3  
Old 12-04-2012
Sometimes, Understanding a question is much harder than providing a solution.

Cheers,
Korean Smilie
# 4  
Old 12-05-2012
I have a need of doing averaging..for interpolation purpose

Try to understand..

consider 1st column, you can find duplicate values 0.789 repeated for about 22 times, but in second and third column values are varying, because of duplicates in 1st column, I have to take average of 2nd and 3rd values (22 values), so what script has to do is whenever it finds duplicate value it has to do averaging..

example : let me take first one sample input here

Code:
column 1 column 2  
1                 20.2
1                 21.2        -------> 3 values in 1st column are same 
1                 22.3                   so I need average of column 2
2                 22.5                   average will be 21.13
3                 25.9
4                 26.8
4                 26.9
4                 26.7

output file should look like this
Code:
column 1 column 2
1               21.13
2               22.5
3               25.9
4               26.8

wherever script finds duplicates in 1st column it has to do the averaging.

I hope now its clear

Last edited by Scott; 12-05-2012 at 06:06 AM.. Reason: Use code tags, please...
# 5  
Old 12-05-2012
Code:
$ cat file
1 20.2
1 21.2
1 22.3
2 22.5
3 25.9
4 26.8
4 26.9
4 26.7

$ awk 's != $1 && NR > 1{print s,a/X[s];a=0}{a+=$2;s=$1;X[$1]++}END{print s,a/X[s]}' file
1 21.2333
2 22.5
3 25.9
4 26.8

# 6  
Old 12-05-2012
I'm not sure I understand either. You want to generate data points every 0.5 m. Depth ranging from 0.789 to 8.305 you will get sth. like 16 data points, say 1, 1.5, ..., 8.5. So why don't you collect the temperatue and salinity into avarages around those abcissa values?
Why do you crack a nut with a sledge hammer, averaging 23 values for 0.789m, when everything will disappear in a large lump sum at 1.0m?
BTW, nit-picking, you can have difference quotients on those columns but no derivatives. And, I think it would be helpful to use one single sample file to discuss and attach, so col 1 would be col 1 everywhre.

And, finally answering your introductory question, yes, I'm pretty sure you can do (some degree of) interpolation in scripts.
# 7  
Old 12-05-2012
Can you explain second line of script

Dear Pamu, if you have time can you please explain 2nd line (awk) of script.. please
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Linear Interpolation of CSV Columnar Data

I am trying to perform linear interpolation on three columns in a CSV file. When I run this code, I do not get any changes in the output (see Expected Output). What am I doing wrong here? Awk Code ' function interpolate(lat1, lon1, t1, lat2, lon2, t2, i) { for (i = 1; i... (2 Replies)
Discussion started by: hrrruser
2 Replies

2. Shell Programming and Scripting

An interpolation between two files

Dear all, I always appreciate your help. I am an electrical engineer. I am using a tool for timing analysis of a circuit. I would like to interpolate results from two timing reports at different voltages (0.945V and 0.78V). If voltage is decreased, data arrival time is increased. For... (4 Replies)
Discussion started by: jypark22
4 Replies

3. Shell Programming and Scripting

Interpolation of two values in two different files

Dear All, I have two files which contain numerical data and strings. I want to create a new file that only revise numerical data from two files using interpolation. I guess AWK works, but I am new on AWK. FileA.txt . . index_2("0.1, 1, 2, 4, 8, 16, 32"); values("0.0330208, 0.0345557,... (17 Replies)
Discussion started by: jypark22
17 Replies

4. Shell Programming and Scripting

XY interpolation by time in awk

Hi I am a newbie in awk scripting. I'm working with a file with xy coordinates that were acquired with a time stamp. All the time stamps were recorded but not the XY coordinates. Let see an example: FFID X Y UNIX TIME TIMEGAP... (8 Replies)
Discussion started by: Joćo Noiva
8 Replies

5. UNIX for Dummies Questions & Answers

Interpolation if there is no exact match for value

Dear all, could you help me with following question. There are two datasets (below). I need to find match between BP values from data1 and data2, and add corresponding CM value from data2 into data1. if there is not exact match, the corresponding CM value should be calculated using interpolation.... (20 Replies)
Discussion started by: kush
20 Replies

6. Shell Programming and Scripting

Expand & Interpolation

Dear All, I have input like this, infile: 10 464310.16 20 464309.44 30 464309.02 40 464316.93 ... ... Desired output per step: out_step01: 10 464310.16 11 12 13 14 (9 Replies)
Discussion started by: attila
9 Replies

7. Shell Programming and Scripting

Script to solve second order (polynomial) interpolation

Currently I have awk command to do linear interpolation awk ' { P=$2 I=$1 } END { j=0; s=I; t=I for(i=m;i<=n;i++) { if(I && i>t) { j++; s=I; t=I } print i, P+(i-s)*(P-P)/(t-s) } } ' m=1 n=8 infile FILE CONTENT... (8 Replies)
Discussion started by: Tzeronone
8 Replies

8. Shell Programming and Scripting

Interpolation using awk

Hi all, Consider I have a text file containing: 1003 60 1005 80 1100 110 Based on that file I need to create another file which is containing value from 1001 till 1100 which is a linear interpolation between two point (for 1004; 1006;1007 until 1109) and extrapolation based on 2... (7 Replies)
Discussion started by: ardy_yana
7 Replies

9. Web Development

JavaScript variable interpolation

Hi everybody, Firstly, this would be the first time I'm using JavaScript. My background is mainly Perl. Nevertheless, here's my problem. So I've created a function function linkout(url){ setTimeout("window.open(url)",5000) //in milliseconds } However because the variable "url" is... (0 Replies)
Discussion started by: z1dane
0 Replies

10. UNIX for Dummies Questions & Answers

variable interpolation

I've become obsessed with trying to get this to work. As of yet, I am unable to figure it out. Unfortunately, I don't have Linux or UNIX available when I get home. Anyone have tips for me on how I can pass param1 to ID via use of COUNTER and loop? thx. LIMIT=6 param1="999999999" export... (0 Replies)
Discussion started by: egkumpe
0 Replies
Login or Register to Ask a Question