Я искал stackoverflow для решения этой проблемы -> но все решения немного отличаются от моих потребностей.
У меня есть большой ndarray (примерно 107 миллионов строк), который можно назвать df
:
[{'A': 5, 'C': 3, 'D': 3},
{'A': 7, 'B': 9, 'F': 5},
{'B': 4, 'C': 7, 'E': 6}]
Мне нужно, чтобы он был преобразован в DataFrame как можно быстрее. Вот пример желаемого вывода:
A B C D E F
0 5.0 NaN 3.0 3.0 NaN NaN
1 7.0 9.0 NaN NaN NaN 5.0
2 NaN 4.0 7.0 NaN 6.0 NaN
Я пробовал pd.DataFrame(df)
и pd.DataFrame.from_dict(df)
, но они дают мне вывод:
0
0 {'A': 5, 'C': 3, 'D': 3}
1 {'A': 7, 'B': 9, 'F': 5}
2 {'B': 4, 'C': 7, 'E': 6}
Вопрос: Как мне конвертировать df
до желаемого выхода?
РЕДАКТИРОВАТЬ:
Я пробовал решение anky_91. Это будет работать для списка, а не для ndarray. Я хочу избежать преобразования в список, поскольку наличие 107 миллионов значений в списке приводит к ошибкам памяти.
pd.DataFrame(df).sort_index(axis=1)
Это все равно дает мне тот же вывод, что и pd.DataFrame (df). Он выводит DataFrame, содержащий один столбец со словарем в каждой строке.