我有一个值数组和一个索引数组。我想使用索引来生成一个具有相同大小的数组,其值对应于第一个数组的索引:
vals = np.array([.2,.3])
ind = np.array([0,0,1,0])
预期结果:
np.array([.2,.2,.3,.2])
答案 0 :(得分:1)
您可以只用索引数组对值数组进行索引,因为它们是整数(索引所需):
array([0.2, 0.2, 0.3, 0.2])
产生:
res=[]
for col in df.columns:
if(df[col].dtype==object):
dftemp=df[col].fillna(" ").str.replace(r"[^\s]", "").str.len()
dftemp=dftemp.eq(2).all()
if(dftemp): res.append(col)
print(res)
根据需要。
答案 1 :(得分:0)
不确定这是否是NumPy的最佳做法,但是您可以这样做:
[vals[i] for i in ind]
new_vals = np.array([vals[i] for i in ind])