Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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中的最大数字_Python_Loops - Fatal编程技术网

如何从一组数字中重复找到python中的最大数字

如何从一组数字中重复找到python中的最大数字,python,loops,Python,Loops,我有一个numpy数组,如下所示: [12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67] 该数据中有20个数字,分为4组,每组5个数字。所以对于前男友来说 12,544,73,56,30 84,34,29,78,22 etc. 我想找出每个组的最大数量,并将它们存储在列表中。 比如: 我是python新手,请帮助。先尝试拆分,然后找出最大值 x = np.array([12,544,73,56,30,84,34,29,

我有一个numpy数组,如下所示:

[12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67] 
该数据中有20个数字,分为4组,每组5个数字。所以对于前男友来说

12,544,73,56,30
84,34,29,78,22 etc.
我想找出每个组的最大数量,并将它们存储在列表中。 比如:


我是python新手,请帮助。

先尝试拆分,然后找出最大值

x = np.array([12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67])
n = 4
res = np.array(np.array_split(x, n)).max(axis=1)

res:

array([544,  84,  98,  94])

尝试先拆分,然后找出最大值

x = np.array([12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67])
n = 4
res = np.array(np.array_split(x, n)).max(axis=1)

res:

array([544,  84,  98,  94])
像这样的

import pandas as pd
field = [12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67]
field = pd.DataFrame(field)
field.rolling(window = 5, win_type = None).max().iloc[4::5]
给出:

4   544.0
9   84.0
14  98.0
19  94.0
每五步

更新 还有一个更快的:

field = np.array([12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67])
field.reshape(-1, 5).max(axis=1)
像这样的

import pandas as pd
field = [12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67]
field = pd.DataFrame(field)
field.rolling(window = 5, win_type = None).max().iloc[4::5]
给出:

4   544.0
9   84.0
14  98.0
19  94.0
每五步

更新 还有一个更快的:

field = np.array([12,544,73,56,30,84,34,29,78,22,73,23,98,83,35,62,52,94,44,67])
field.reshape(-1, 5).max(axis=1)

拆分为块并为每个块计算最大值:拆分为块并为每个块计算最大值:从导入中删除numpy,因为解决方案不使用它。从导入中删除numpy,因为解决方案不使用它。