Xarray.DataSet из списка Pandas.DataFrames

У меня есть несколько файлов с битами для анализа. Сначала я прочитал их в списке BitString.Bits. Затем я разбиваю биты каждого файла на определенные части, которые хочу видеть, и сохраняю их в списке Pandas.DataFrames. Один DF для каждого файла.

Теперь для дальнейшего построения графиков и целей анализа я хочу хранить все данные в одном Xarray.Dataset, где у меня DataFrames сложены вдоль третьей оси с именем «набор данных».

Я попытался объединить каждый DataFrame вместе с DataSet:

xr.concat(data_df[:], dim="dataset")

но я получил сообщение об ошибке, что я не могу объединить, кроме DataArray или DataSets. Могу ли я на лету конвертировать DataFrames в DataArrays?

Спасибо за вашу помощь!

Привет из Германии

Янв


person Jan Jansen    schedule 26.05.2017    source источник


Ответы (1)


вы можете использовать метод DataFrame.to_xarray () :

xr.concat([df.to_xarray() for df in data_df], dim="dataset")

где data_df - это список фреймов данных

person MaxU    schedule 26.05.2017
comment
Чтобы было ясно: аргумент dim должен быть информативным именем для нового измерения, которое отличает каждый исходный DataFrame друг от друга, поэтому здесь это будет что-то вроде dim = file_bit. Это не имеет ничего общего с тем фактом, что вы объединяете их в набор данных xarray. - person ThomasNicholas; 13.06.2018
comment
У меня проблема, похожая на эту, не могли бы вы мне помочь? Вот мой вопрос: stackoverflow.com/q/58358170/5838180 - person NeStack; 14.10.2019