Мне нужно сгенерировать два списка массивов: каждый список будет содержать 1d-массивы, но длины каждого 1d-массива могут быть разными.Первый список будет содержать некоторые значимые значения.Второй список должен быть точно такой же по форме, но должен содержать только его.
Код для генерации первого массива:
myarray=[]
rowcount=3
elements_per_row=[2,3,5]
for i in range (0,rowcount):
elements=elements_per_row[i]
temparray=np.random.randn(elements)
myarray.append(temparray)
Вывод кода выше будет списком массивов (а именно- 3 массива с 2,3,5 элементами, заполненными случайными числами).
У меня есть два вопроса:
Есть ли более элегантный / векторизованный / вычислительно быстрееспособ создания первого списка (массив массивов будет в порядке)?
Создайте список массивов точно такой же формы, но заполненных ими:
Я понимаю самый простой способ: просто добавьте одинбольше массива в начале, и заполните его np.ones.Подход «грубой силы» будет выглядеть следующим образом:
myarray=[]
arrayofones=[]
rowcount=3
elements_per_row=[2,3,5]
for i in range (0,rowcount):
elements=elements_per_row[i]
#generating meaningful values
temparray=np.random.randn(elements)
myarray.append(temparray)
# generating ones
temparray=np.ones(elements)
arrayofones.append(temparray)
Но какой подход будет лучше, если в качестве входных данных будет дан myarray
, и мне все еще нужно получить список из них?