Вы можете передать список индексов и извлечь только те значения, которые вас интересуют.
В этом примере я создаю матрицу Eye и из нее я создаю вид по диагонали
tensor = np.eye(3)
>>> diagonal_view = [i for i in range(3)], [i for i in range(3)]
>>> tensor[diagonal_view]
array([1., 1., 1.])
для ваш пример в форме матрицы, вы хотели бы что-то вроде этого
# 1. dimension , 2. dimension
voight_view = [0,1,2,1,2,0],[0,1,2,2,0,1] # voight notation # voight notation
>>> tensor[voight_view]
array([1., 1., 1., 0., 0., 0.])
Если вы не хотите ссылаться, просто используйте
array.copy()
Но кажется, что работает только чистое задание
new_array = tensor[voight_view]
Вы найдете хороший список всех поставляемых библиотек ruby в ruby stdlib .
I ' Я использую библиотеку zlib, она открыта, используется везде, и вы найдете библиотеки практически для всех языков!