Я пытаюсь добавить новое измерение некоторой длины в массив данных.
Я пытался использовать метод expand_dims, документация которого указывает, что я должен быть в состоянии сделать это
http://xarray.pydata.org/en/stable/generated/xarray.DataArray.expand_dims.html#xarray.DataArray.expand_dims
"Размеры для включения в новую переменную. Если указано как str или последовательность str, то размеры вставляются с длиной 1. Если задано как dict, то ключи являются новыми размерами, а значения являются целыми числами ( с указанием длины новых измерений ) или последовательности / ndarray (с указанием координат новых измерений). "
Я пробовал это, но безуспешно.
test = xr.DataArray([1,2,3,4,5,6])
test
Out[114]:
<xarray.DataArray (dim_0: 6)>
array([1, 2, 3, 4, 5, 6])
Dimensions without coordinates: dim_0
test.expand_dims({'dim_1':3})
Out[115]:
<xarray.DataArray (dim_1: 1, dim_0: 6)>
array([[1, 2, 3, 4, 5, 6]])
Dimensions without coordinates: dim_1, dim_0
Я вижу, что дополнительное измерение в массиве есть из дополнительных скобок, но длина равна единице:
test.expand_dims({'dim_1':3}).shape
Out[120]: (1, 6)
Полагаю, я ожидал, что форма будет (3,6), расширять данные или (3,2), изменять ее.
Что я делаю неправильно или не понимаю? Я только что обнаружил xarray, поэтому вполне возможно, что это концептуальная вещь, которую я не понимаю.