繁体   English   中英

匹配长度不等的多个Numpy arrays

[英]Match lengths of multiple Numpy arrays of unequal length

我正在对包含 3000 个值的数据进行一些数据处理。 有时 arrays 的长度略有不同,我正在尝试找到一种方法来找到最小长度数组并将其他两个与之匹配。

# Some randomly generated sequences
a = array([7, 1, 7, 8, 0, 0, 1, 2, 8, 7, 2, 3])
b = array([0, 1, 1, 8, 3, 4, 1, 5])
c = array([8, 3, 3, 1, 4, 6, 6, 7, 3, 8, 8])

# What I'd like accomplished
a = array([7, 1, 7, 8, 0, 0, 1, 2])
b = array([0, 1, 1, 8, 3, 4, 1, 5])
c = array([8, 3, 3, 1, 4, 6, 6, 7])

对于不同长度的 2 个 arrays,这个问题似乎很好地解决了,但是我的搜索没有找到任何匹配多个 arrays 的长度。 查看一些 Numpy 方法,如resizearray_split似乎没有我想要的功能。 在我使用我找到的匹配 2 arrays 的方向开始编写某种丑陋的递归 function 之前,有人对如何方便地完成此操作有任何建议吗?

首先我们可以返回min长度

mlen = min(map(len, [a, b, c]))
8

然后

newl=[x[: mlen ] for x in [a,b,c]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM