Sponsored Content
Top Forums Shell Programming and Scripting Bash arrays: rebin/interpolate smaller array to large array Post 302966570 by f77hack on Saturday 13th of February 2016 02:23:32 PM
Old 02-13-2016
Bash arrays: rebin/interpolate smaller array to large array

hello,
i need a bit of help on how to do this effectively in bash without a lot of extra looping or massive switch/case

i have a long array of M elements and a short array of N elements, so M > N always. M is not a multiple of N.

for case 1, I want to stretch N to fit M
arrayHuge
Code:
 H = ( [0]....          [M-1] ) has M elements

arraySmall
Code:
 S= ( [0]....          [N-1] )  has N elements

arraySmallRemapped
Code:
S_expanded= ( S[0] ....    S[N-1]%2 .....      S[N-1])  has M elements

i can do this by checking the remainder with switch/case of if/then but am looking for a better way.
this code works
Code:
  for (( i=1; i<${LengthM}+1; i++ ));
  do
    case $(( ($i*$arraySmall/$arrayHuge ) )) in
    0) tmp="$arraySmall[0]";;
    1) tmp="$arraySmall[1]";;
    N-1]) tmp="$arraySmall[N-1]";;
    *)tmp="$tmp";;
   esac
  S_expanded[$i]="$tmp"
 done


Last edited by f77hack; 02-13-2016 at 04:52 PM.. Reason: corrected loop
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl array of arrays

Hi, I am trying to assign an array as a value to one of the array element, I mean I have an array @KS and array @kr. I want array @KS to hold @kr as an element. So I am doin this $KS=@kr; But the value stored is number of elements in the @kr array. Can... (2 Replies)
Discussion started by: eamani_sun
2 Replies

2. Shell Programming and Scripting

Searching array of arrays in perl

Suppose there are two arrays of arrays: @A = ( , , , ); @B = ( , , , , ); For each of $A, $A, $A..., I want to find the corresponding one in @B (match the letter, like $A eq $B), and print out both the second item, for example, $A and $B. How can I do this in perl? grep + map? Hope I... (1 Reply)
Discussion started by: zx1106
1 Replies

3. Shell Programming and Scripting

PHP arrays as array elements

PHP question...I posted this on the Web Development forum, but maybe this is a better place! I have an SQL query that's pulled back user IDs as a set of columns. Rather than IDs, I want to use their names. So I have an array of columns $col with values 1,7,3,12 etc and I've got an array $person... (3 Replies)
Discussion started by: JerryHone
3 Replies

4. Shell Programming and Scripting

perl - need help with 2 arrays to hash or 2d array?

I have 2 arrays: @array1 outputs the following: 1 1 1 2 @array2 outputs the following A B C D (2 Replies)
Discussion started by: streetfighter2
2 Replies

5. Shell Programming and Scripting

using arrays and also help with array.contains functionality

here is what i have... i=1 while read line do if grep -i-q "create procedure"<<<$line then startline="$line" endline="blahblah" Get procedure name into a variable named procName procName="procedure name is stored" do some... (2 Replies)
Discussion started by: vivek d r
2 Replies

6. Shell Programming and Scripting

Bash 3.2 - Array / Regex - IF 3rd member in array ends in 5 digits then do somthing...

Trying to do some control flow parsing based on the index postion of an array member. Here is the pseudo code I am trying to write in (preferably in pure bash) where possible. I am thinking regex with do the trick, but need a little help. pesudo code if == ENDSINFIVEINTS ]]; then do... (4 Replies)
Discussion started by: briandanielz
4 Replies

7. Shell Programming and Scripting

Bash Array connectin to another Array

Hello, i have a script that i need account_number to match a name. for exsample : ACCOUNT_ID=(IatHG8DC7mZbdymSoOr11w KbnlG2j-KRQ0-1_Xk356s8) and i run a loop curl requst with this the issue is that i want to know on which account were talking about so bash will know this : ... (4 Replies)
Discussion started by: batchenr
4 Replies

8. Programming

Making an array of 2D arrays in C

I hate I'm asking for help again. Unfortunately it seems there just aren't any links I can find on making an array that holds a bunch of two dimensional arrays. Maybe my google-fu is lacking. Basically I have a header file like this: #define MATRIX 10 int white_l1; int white_l2; int... (2 Replies)
Discussion started by: Azrael
2 Replies

9. Programming

Calling an array of arrays in C.

Corona688 was great in helping me learn how to create arrays that hold other two dimensional array here. Unfortunately I didn't think ask about how to implement or call them. Basically, I'm trying to call an array of two-dimensional arrays like this: declaration: int (*side_one) = { { white_l1,... (6 Replies)
Discussion started by: Azrael
6 Replies

10. Programming

Looping an array of 2d arrays in C

Le sigh... Hopefully this will be the last time I have to ask for help on this topic. For a while now I've been working with a 1d array that holds 2d arrays. For reference you can view here. Now I'm just trying to loop through the elements with the following: #include <stdio.h> void... (3 Replies)
Discussion started by: Azrael
3 Replies
ARRAY_CHUNK(3)								 1							    ARRAY_CHUNK(3)

array_chunk - Split an array into chunks

SYNOPSIS
array array_chunk (array $array, int $size, [bool $preserve_keys = false]) DESCRIPTION
Chunks an array into arrays with $size elements. The last chunk may contain less than $size elements. PARAMETERS
o $array - The array to work on o $size - The size of each chunk o $preserve_keys - When set to TRUE keys will be preserved. Default is FALSE which will reindex the chunk numerically RETURN VALUES
Returns a multidimensional numerically indexed array, starting with zero, with each dimension containing $size elements. ERRORS
/EXCEPTIONS If $size is less than 1 E_WARNING will be thrown and NULL returned. EXAMPLES
Example #1 array_chunk(3) example <?php $input_array = array('a', 'b', 'c', 'd', 'e'); print_r(array_chunk($input_array, 2)); print_r(array_chunk($input_array, 2, true)); ?> The above example will output: Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [0] => e ) ) Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [2] => c [3] => d ) [2] => Array ( [4] => e ) ) SEE ALSO
array_slice(3). PHP Documentation Group ARRAY_CHUNK(3)
All times are GMT -4. The time now is 06:46 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy