Я пытаюсь проанализировать биологические данные, и у меня есть список массивов следующим образом:
[[['ENSMUSG00000000001' '-0.072141867' '0.153569137']
['ENSMUSG00000000028' '-0.031985346' '0.537383098']
['ENSMUSG00000000037' '0.046097573' '0.727492292']]
[['ENSMUSG00000000001' '0.422529239' '4.86E-24']
['ENSMUSG00000000028' '-0.036262661' '0.393367015']
['ENSMUSG00000000037' '0.070899297' '0.427056034']]
[['ENSMUSG00000000001' '0.117877802' '0.000480518']
['ENSMUSG00000000028' '0.122150713' '0.000368726']
['ENSMUSG00000000037' '0.009156006' '0.912776746']
['ENSMUSG00000110411' '-1.67014277' '7.92E-05']
['ENSMUSG00000110415' '-0.103612996' '0.606599177']
['ENSMUSG00000110424' '0.357829407' '0.053448692']]]
и я хотел бы удалить несколько самых маленьких списков. Например, для списка индексов, который нужно удалить как
[(0,1),(1,2),(2,3)]
и я хотел бы получить:
[[['ENSMUSG00000000001' '-0.072141867' '0.153569137']
['ENSMUSG00000000037' '0.046097573' '0.727492292']]
[['ENSMUSG00000000001' '0.422529239' '4.86E-24']
['ENSMUSG00000000028' '-0.036262661' '0.393367015']]
[['ENSMUSG00000000001' '0.117877802' '0.000480518']
['ENSMUSG00000000028' '0.122150713' '0.000368726']
['ENSMUSG00000000037' '0.009156006' '0.912776746']
['ENSMUSG00000110415' '-0.103612996' '0.606599177']
['ENSMUSG00000110424' '0.357829407' '0.053448692']]]
Итак, я попробовал несколько решений с или без numpy, но ни одно из них не работает
Идея, на которой я сконцентрирован, была бы примерно такой (где tot - мой полный массив и указатель позиций элементов, от которых я хочу избавиться)
for e in delindex[::-1]:
tot=np.delete(tot,e[1],e[0])
Но я всегда получаю ошибку:
IndexError: index 12263 is out of bounds for axis 2 with size 3
Как вы заметили, мой массив очень большой, поэтому я не могу использовать итеративные циклы на нем