Причина, по которой это не работает, заключается в том, что для каждого результата it.product(..)
вы создаете массив для , который результата.Не для всего результата.
Вы можете создать такую матрицу с помощью:
np.array(<b>list(</b>it.product('ACGT', repeat=2)<b>)</b>)
или с помощью meshgrid
:
dna = np.array(list('ACGT'))
np.transpose(<b>np.meshgrid(</b>dna, dna<b>)</b>).reshape(-1,2)
Оба производят массив, который выглядит как:
array([['A', 'A'],
['A', 'C'],
['A', 'G'],
['A', 'T'],
['C', 'A'],
['C', 'C'],
['C', 'G'],
['C', 'T'],
['G', 'A'],
['G', 'C'],
['G', 'G'],
['G', 'T'],
['T', 'A'],
['T', 'C'],
['T', 'G'],
['T', 'T']], dtype='<U1')