Python 从另一个大小不同的数组中为数组分配新值

Python 从另一个大小不同的数组中为数组分配新值,python,arrays,sorting,numpy,Python,Arrays,Sorting,Numpy,我正在尝试使用con值为prob数组分配新值。但是con值比prob值少。我想知道是否有可能将con值多次指定给prob值?例如,我希望输出看起来像: import numpy as np from math import * import pandas as pd prob = np.array([0.1,0.2,0.3,0.02,0.04,0.005,0.4,0.5,0.9,1.0]) con = np.array([1,100,10,50,60,70,30]) new = np.array

我正在尝试使用con值为prob数组分配新值。但是con值比prob值少。我想知道是否有可能将con值多次指定给prob值?例如,我希望输出看起来像:

import numpy as np
from math import *
import pandas as pd
prob = np.array([0.1,0.2,0.3,0.02,0.04,0.005,0.4,0.5,0.9,1.0])
con = np.array([1,100,10,50,60,70,30])
new = np.array(map(dict(zip(sorted(prob),sorted(con))).get,prob))
print new
[50 60 70 10 30 1 100 None None None]

如果不可能,我是否只需要编写一个条件?

为什么要使用numpy数组立即调用结果的
list()
?另外,可能是基于意见的,
列表(map(dict(排序(
从一个清晰的理解角度来看有点失控:)好吧,你需要决定的是
con
中的哪些值,你想在
prob
中使用未分配的值吗。你只想再次重复
con
,这样它就
[1100,10,50,60,70,30,1100,10]
还是要重复最后一个值
[1100,10,50,60,70,30,30,30,30,30]
或采样一些随机值?@ALollz我希望最大prob值被指定为最大con值,最小prob值被指定为最小con值,下一个最高prob值被指定为下一个最高con值,依此类推。因此我希望输出看起来像[30,30,50,1,1,1,50,60,70100]@玛丽,你能把
prob
分为两部分吗:一部分大小相同的
con
,其值对应于
con
,另一部分对应于你要添加的值?我想这会更清楚。。。
[30 30 50 1 1 1 50 60 70 100]