У меня есть многомерный массив numpy, некоторые столбцы с плавающей точкой, другие - строки. Я хочу округлить столбцы с плавающей точкой до 3 десятичных знаков. Я не могу использовать np.round()
, так как кажется, что он работает только с numpy массивами, которые состоят из одного типа (то есть все они являются плавающими). Фрагмент моего кода можно увидеть ниже:
cat = '/home/myname/catalogue.csv'
cat = Table.read(cat, format="ascii")
ID1 = np.array(cat['ID_1'])
ID1 = ID1.astype(str)
ID2 = np.array(cat['ID_2'])
ID2 = ID2.astype(str)
mag = np.array(cat['magnitude'])
mag = mag.astype(float)
semi_major_axis = np.array(cat['SMA'])
semi_major_axis = semi_major_axis.astype(float)
semi_minor_axis = np.array(cat['sma'])
semi_minor_axis = semi_minor_axis.astype(float)
position_angle = np.array(cat['position_angle'])
position_angle = position_angle.astype(float)
match = (ID1, ID2, mag, (semi_minor_axis/semi_major_axis), position_angle)
match = np.stack(match, axis=1)
Есть ли способ округлить конкретно величину, ось крысы ios и угол положения до 3 десятичных знаков?