Я пытаюсь объединить два массива, созданных в этой форме:
data1 = numpy.array([(1,2,3),(4,5,6)], dtype={'names':['a', 'b', 'c'], 'formats':[int, float, float]})
data2 = numpy.array([(11,22),(44,55)], dtype={'names':['d', 'e'], 'formats':[int, float]})
Я хочу получить что-то в этой форме:
array([(1, 2., 3., 11, 22.), (4, 5., 6., 44, 55.)],
dtype=[('a', '<i8'), ('b', '<f8'), ('c', '<f8'), ('d', '<i8'), ('e', '<f8')])
Как я могу это сделать?
Этот код почти привел меня туда, но я не могу понять, как объединить dtypes:
m = []
for i,j in zip(data1, data2):
print(i,j)
m.append( (*i,*j) )
Дополнительный вопрос:
Упрощаются ли подобные манипуляции с pandas?
Я в основном хочу массивы с именованными полями и типом, которые я могу легко построить, вывести в CSV-файлы (с заголовком) и к которым я могу легко добавить дополнительные столбцы и строки, если это необходимо. (например: вычислить новый столбец из других столбцов, добавить строки из другого набора данных)
Я хочу изменить свой код, чтобы при необходимости создать массивы другим способом, но все же хотел бы знать, как поступать с этими массивами dtype ...