我目前有一个形状的Numy数组(71、136、136、130);确切的维度各不相同.这是[时间,Z,Y,X]形式的体积数据(例如,温度).我允许用户为最大、最小或平均指定折叠Z、Y、X体积元素的时间范围.

通过使用While循环一次获取一个时间片,我成功地在20-70(示例索引)的时间索引范围内以元素方式折叠了最大和最小array.然而,这种循环方法在计算平均值时不起作用.

我应该能够在没有循环 struct 的情况下执行这些操作(最大、最小或平均).Np.Maximum()和np.Minimum()函数需要两个数组,所以我似乎不能安排像np.maximum(array[20:70,:,:,:])这样的代码,我希望Python/numpy推断我只想将索引20-70用于返回的最大array.Np.ean()函数的操作似乎略有不同,但原则上我希望它以相同的方式工作;仅在指定的时间索引上对数据元素进行平均.如有任何建议,我们将不胜感激.谢谢.

基于注释,下面是一些简化的示例代码.请注意,当我获得数据时,它是FULL_ARRAY的形式;我实际上并不手动构造它.

import numpy as np  
    
time0_xy_data = np.array([[22, 80, 17, 98, 42, 46], [36, 11, 95, 23, 77, 12]])  
time1_xy_data = np.array([[12, 97, 85, 68, 44, 43], [15, 84, 91, 33, 13, 56]])  
time2_xy_data = np.array([[45, 26, 37, 93,  2, 28], [73, 78, 72, 48, 62, 62]])  
time3_xy_data = np.array([[42, 67, 59, 60, 55, 67], [21, 32, 88, 87, 23, 15]])
    
full_array = np.array([time0_xy_data, time1_xy_data, time2_xy_data, time3_xy_data])  

# Get the element-wise maximum of [0:1,:,:,:]  
maximum_slice = np.maximum(full_array[0:1 :, :])  
    
print(maximum_slice)  

# What I expect to get back:  
maximum_slice = np.array([[22, 97, 85, 98, 44, 46], [36, 84, 95, 33, 77, 56]])  

推荐答案

使用np.maxnp.minnp.meanaxis参数:

> np.max(full_data[0:2], axis=0)
array([[22, 97, 85, 98, 44, 46],
       [36, 84, 95, 33, 77, 56]])

> np.mean(full_data[1:3], axis=0)
array([[28.5, 61.5, 61. , 80.5, 23. , 35.5],
       [44. , 81. , 81.5, 40.5, 37.5, 59. ]])

> np.min(full_data[2:], axis=0)
array([[42, 26, 37, 60,  2, 28],
       [21, 32, 72, 48, 23, 15]])

轴:无、整型或整型数组,可选 要沿着的一个或多个轴线运行.默认情况下,拼合输入为 使用.

Python相关问答推荐

Python多处理:当我在一个巨大的pandas数据框架上启动许多进程时,程序就会陷入困境

我从带有langchain的mongoDB中的vector serch获得一个空数组

仿制药的类型铸造

删除最后一个pip安装的包

如何在Python中将returns.context. DeliverresContext与Deliverc函数一起使用?

查找两极rame中组之间的所有差异

在Polars(Python库)中将二进制转换为具有非UTF-8字符的字符串变量

如何让程序打印新段落上的每一行?

用NumPy优化a[i] = a[i-1]*b[i] + c[i]的迭代计算

如何在Python数据框架中加速序列的符号化

将tdqm与cx.Oracle查询集成

DataFrames与NaN的条件乘法

Python—从np.array中 Select 复杂的列子集

迭代嵌套字典的值

Plotly Dash Creating Interactive Graph下拉列表

Gunicorn无法启动Flask应用,因为无法将应用解析为属性名或函数调用.'"'' "

如何在Python Pandas中填充外部连接后的列中填充DDL值

python3中np. divide(x,y)和x/y有什么区别?'

我怎样才能让深度测试在OpenGL中使用Python和PyGame呢?

普洛特利express 发布的人口普查数据失败