My question is exactly the same as this one but in Python instead of R. I couldn't find a similar question for python and so I'm asking this one.
I have 2 vectors (lists actually)
a = [1,2,3]
b = [5,6,7]
A defined function
def calc(i, j):
return (i+j)/2
I want to apply the calc
function to all the pairs of values in the vectors so that i obtain a matrix (preferably using numpy
package).
The expected result in this case is
result = [
[3, 3.5, 4],
[3.5, 4, 4.5],
[4, 4.5, 5]
]
I would like to avoid list comprehensions and for loops to achieve this result.