如何扩展数组?

时间:2016-02-10 12:20:27

标签: python-2.7

我是编程新手但尝试执行以下操作:

我有一个时间x=[12,18,27,34]数组,在数组y=[34,68,22,81]中有相应的通量值。我扩展了x,以便新数组(x_new)xmin添加到xmax

x_new=[np.min(x)+i for i in range(0,np.max(x)-np.min(x)+1)]

我想扩展我的焊剂数组,使其与x_new的长度相同,但我需要与原始x值相同的索引位置的原始值。什么可以输入我的扩展磁通阵列的备用点可以是任何东西。

任何想法都会很棒!

1 个答案:

答案 0 :(得分:0)

[编辑]刚刚得到你所期待的。请尝试以下方法:

import numpy as np

x=[12,18,27,34]  # array of time
y=[34,68,22,81]  # corresponding flux values

if __name__ == '__main__':    
    x_new=[np.min(x)+i for i in range(0,np.max(x)-np.min(x)+1)]
    y_new = []

    for i in xrange(len(x_new)):
        if x_new[i] in x:
                y_new.append(y[x.index(x_new[i])])
        else:
                y_new.append(np.nan)

    print 'x_new = ', x_new
    print 'y_new = ', y_new

输出:

x_new =  [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34]
y_new =  [34, nan, nan, nan, nan, nan, 68, nan, nan, nan, nan, nan, nan, nan, nan, 22, nan, nan, nan, nan, nan, nan, 81]