我有一个有n个值的numpy一维数组,我们称之为xdata
。在
我想创建一个多维numpy数组,让它称为xdataMulti
,这样这个数组的每个维度都包含xdata
中某个范围内的值。在
比如说
xdata = np.array([-0.879645943,-0.7897614865,-0.7051130178,-0.6108652382,-0.5270894341,...])
我想把所有扩展数据的值放在-0.9
和{-0.6
和{
如何创建和填充xdataMulti
(我事先知道我有多少个范围及其端点,但是我不知道每个范围中有多少个扩展数据点,我必须循环xdata
才能找到答案)?在
如果范围的数量不是太大,可以手动创建它们
其中f是你的scipy函数。在
如果范围数很大,可以对数据进行排序,然后使用
^{pr2}$searchsorted
。假设排序数组bnd
中有块的边界:请注意,这与第一个解决方案的不同之处在于,您的范围将被排序。在
如果需要保留原始顺序,可以使用间接排序
多维数组必须是矩形的,因此如果不是所有的行/列都具有相同的长度,那么您就走运了。在
不过,有办法解决这个问题。一种方法是创建
list
的list
:这不是一个多维数组,只是一个数组列表,但根据您的需要,这可能已经足够了。在
相关问题 更多 >
编程相关推荐