python,numpy数组如何返回最大值数组?

a=[1,2,5,2,3,7,4]arr=np.array(a)求每个元素的前三个元素的最大值,并组成新数组,最终结果应该是如下:result=[1255577]要求不使... a=[1,2,5,2,3,7,4]
arr=np.array(a)
求每个元素的前三个元素的最大值,并组成新数组,最终结果应该是如下:
result=[1 2 5 5 5 7 7]
要求不使用for循环的方法
找到答案了,制造错位数组就可以了:
import numpy as np
a=[1,2,3,44,55,22,11,22,32,14,25,12]
a=np.array(a)
b=np.pad(a[:-1],(1,0),'constant')
print np.maximum(a,b)
展开
 我来答
司马刀剑
高粉答主

2018-01-27 · 每个回答都超有意思的
知道顶级答主
回答量:4.6万
采纳率:93%
帮助的人:7430万
展开全部
如果是list,有max(list)
也可以自己写排序算法,比如冒泡排序

a=[3,4,2,6,3]for i in range(0,len(a)): for j in range(i+1,len(a)): first=int(a[i]) second=int(a[j]) if first<second: a[i]=a[j] a[j]=firstprint a[0]
追问
numpy数组啊 要求不使用for循环 就想看看有没有数组运算方式来解决这个问题
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式