- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
From Interpolation to Finding Closets Value
I received some help long ago with trying to interpolate a -1 db Compression which worked flawlessly however the customer has changed their minds on the who interpolation thing. Now they just want the input value closest to the -1 db compression and then using that apply a spec limit to the Pout. I am looking for some assistance in trying to determine this point. Attached is a data table that has the raw data.
Grouping would be {"wafer_number", "RowCol", "input"} . There are 36 readings for each input at different compression values. I only need the closest to -1.
Thanks in advance
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: From Interpolation to Finding Closets Value
Hi,
If you want to do this in the present table, you can add a formula column with the following formula, which compares each row's distance to -1 ( abs ( :compression - (-1))), which is (abs(:compression + 1)), to the minimum value found in the group.
Abs( :Compression + 1 ) == Col Minimum( Abs( :Compression + 1 ), :wafer_number, :RowCol, :input )
Thus, the rows in this column equaling 1 are the rows you want... you could select and subset them, etc.
If you want to directly subset without creating a new column, and don't mind using JSL, you could use this:
Names Default To Here(1);
dt = current data table();
dtSub = dt << subset(
selected columns(0),
rows(dt << get rows where(Abs( :Compression + 1 ) == Col Minimum( Abs( :Compression + 1 ), :wafer_number, :RowCol, :input )))
);
Cheers,
Brady
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: From Interpolation to Finding Closets Value
Hi,
If you want to do this in the present table, you can add a formula column with the following formula, which compares each row's distance to -1 ( abs ( :compression - (-1))), which is (abs(:compression + 1)), to the minimum value found in the group.
Abs( :Compression + 1 ) == Col Minimum( Abs( :Compression + 1 ), :wafer_number, :RowCol, :input )
Thus, the rows in this column equaling 1 are the rows you want... you could select and subset them, etc.
If you want to directly subset without creating a new column, and don't mind using JSL, you could use this:
Names Default To Here(1);
dt = current data table();
dtSub = dt << subset(
selected columns(0),
rows(dt << get rows where(Abs( :Compression + 1 ) == Col Minimum( Abs( :Compression + 1 ), :wafer_number, :RowCol, :input )))
);
Cheers,
Brady
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: From Interpolation to Finding Closets Value
Thank you very much for your help. I was sort of on the right track with the :Compression + 1 but didn't consider the absolute value. Works like a charm.