如何在 numpy 数组中插入它们之间每两个值的平均值
How to insert mean of each two values between them in a numpy array
我有一个 numpy 数组,想在它们之间插入每两个值的平均值。这是我的数组:
import numpy as np
incomp_arr = np.array([1., 2., 3., 4., 6., 0.])
我想在每两个值之间添加平均值:
comp_arr = np.array([1., 1.5, 2., 2.5, 3., 3.5, 4., 5., 6., 3., 0.])
目前我只能使用 incomplete_arr
制作平均数组:
avg_arr = ((incomp_arr + np.roll(incomp_arr,1))/2.0)[1:]
非常感谢为此提供的任何帮助。
如果您更改计算方式 avg_arr
,您可以:
avg_arr = ((incomp_arr + np.roll(incomp_arr, -1))/2.0)
# array([1.5, 2.5, 3.5, 5. , 3. , 0.5])
np.vstack([incomp_arr, avg_arr]).flatten('F')[:-1]
# array([1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 5. , 6. , 3. , 0. ])
我有一个 numpy 数组,想在它们之间插入每两个值的平均值。这是我的数组:
import numpy as np
incomp_arr = np.array([1., 2., 3., 4., 6., 0.])
我想在每两个值之间添加平均值:
comp_arr = np.array([1., 1.5, 2., 2.5, 3., 3.5, 4., 5., 6., 3., 0.])
目前我只能使用 incomplete_arr
制作平均数组:
avg_arr = ((incomp_arr + np.roll(incomp_arr,1))/2.0)[1:]
非常感谢为此提供的任何帮助。
如果您更改计算方式 avg_arr
,您可以:
avg_arr = ((incomp_arr + np.roll(incomp_arr, -1))/2.0)
# array([1.5, 2.5, 3.5, 5. , 3. , 0.5])
np.vstack([incomp_arr, avg_arr]).flatten('F')[:-1]
# array([1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 5. , 6. , 3. , 0. ])