Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将1个两元组列表或列表列表传递给scipy interp1d函数_Python_List_Scipy - Fatal编程技术网

Python 将1个两元组列表或列表列表传递给scipy interp1d函数

Python 将1个两元组列表或列表列表传递给scipy interp1d函数,python,list,scipy,Python,List,Scipy,目前,我正在将数据传递到interp1d中,如下所示: x_ = [4,5,6,7,8] y_ = [146,228,350,493,637] y_interp = scipy.interpolate.interp1d(x_, y_) print y_interp(5.6) -> 301.2 是否可以以元组对列表或列表的形式传递数据 data = [[4,146],[5,228],[6,350],[7,493],[8,637]] # or data = [(4,146),(5

目前,我正在将数据传递到
interp1d
中,如下所示:

x_  = [4,5,6,7,8]
y_  = [146,228,350,493,637]

y_interp = scipy.interpolate.interp1d(x_, y_)
print y_interp(5.6)

-> 301.2
是否可以以元组对列表或列表的形式传递数据

data = [[4,146],[5,228],[6,350],[7,493],[8,637]]

# or

data = [(4,146),(5,228),(6,350),(7,493),(8,637)]


y_interp = scipy.interpolate.interp1d(data)
print y_interp(5.6)

-> error..
您可以使用将元组(或列表)聚合在一起,然后将两个新序列解压为参数

>>> data = [(4,146),(5,228),(6,350),(7,493),(8,637)]
>>> y_interp = scipy.interpolate.interp1d(*zip(*data))
301.2

编辑

由于您只是为了传递数据和使用Python2.x而重新格式化数据,因此最好只生成一个iterable,而不产生列表的开销