gpt4 book ai didi

python - 如何从 Numpy 数组中删除最后 n 行?

转载 作者:太空狗 更新时间:2023-10-30 00:29:00 26 4
gpt4 key购买 nike

我正在尝试从 numpy 数组中删除最后几行。我可以使用以下代码删除 0 到 i 行。

for i, line in enumerate(two_d_array1):
if all(v == 0 for v in line):
pass
else:
break

two_d_array2 = np.delete(two_d_array1, slice(0, i), axis=0)

关于如何对数组的末尾做同样的事情有什么建议吗?

for i, line in enumerate(reversed(two_d_array2)):
if all(v == 0 for v in line):
pass
else:
break

two_d_array3 = np.delete(two_d_array2, **slice(0, i)**, axis=0)

最佳答案

您可以使用 slice索引的符号。

从数组中删除最后 n 行:

a = np.array(range(10)).reshape(5, 2)
>>> a
array([[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]])

n = 2 # Remove last two rows of array.
>>> a[:-n, :]
array([[0, 1],
[2, 3],
[4, 5]])

从数组中删除前 n 行:

>>> a[n:, :]  # Remove first two rows.
array([[4, 5],
[6, 7],
[8, 9]])

关于python - 如何从 Numpy 数组中删除最后 n 行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48633660/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com