Как найти длину массива в кортеже - PullRequest
0 голосов
/ 15 февраля 2020

У меня есть кортеж массивов, и мне нужно найти длину массива, используя индекс кортежа. Этот кортеж генерируется из альтернативной матрицы, альтернативной numpy, где я использую scipy.sparse.csr _matrix и numpy .unravel_index на основе этой записи

ie:

>>>T = [(array([0,1,2,3,4,5]),), (array([0,1,2,3,4,5,6,7,8,9]),)]
>>>print(T[1])
(array([0,1,2,3,4,5,6,7,8,9]),)

Мне нужно найти длину каждого массива в кортеже для использования позже. использование len () не работает

>>>len(T[1])
1

Я использую это в пределах для l oop, который перебирает каждый массив, используя эти массивы в качестве индекса для других данных.

У меня есть искал и искал, как решить эту проблему, но ничего не нашел. Пожалуйста, помогите!

Ответы [ 2 ]

0 голосов
/ 15 февраля 2020

Вы также можете попробовать концепцию понимания, как

arr_length = [len(i[0]) for i in T]
0 голосов
/ 15 февраля 2020

Каждый элемент в T - это кортеж длины 1, поэтому просто проиндексируйте его следующим образом:

>>> len(T[1][0])
10

Для ясности:

>>> T[1]
(array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),)
>>> T[1][0]
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...