серия orderedDict vs pandas
Все еще новичок в этом, извините, если я спрашиваю что-то действительно глупое. В чем разница между упорядоченным словарем питона и серией панд?
Единственное различие, которое я смог придумать, заключается в том, что orderedDict может иметь вложенные словари в данных. И это все? Это вообще правда?
Будет ли разница в производительности между использованием одного и другого?
Мой проект-это прогноз продаж, большинство данных будут примерно такими: {неделя 1: 400 единиц, Неделя 2 : 550 единиц}... Возможно, упорядоченный словарь будет избыточным, поскольку порядок ввода не имеет значения по сравнению с Неделей#?
Еще раз прошу прощения, если мой вопрос глуп, я просто пытаюсь быть тщательным, как я учусь.
Спасибо!
- Стивен
2 ответа:
Самое главное, что
pd.Series
является частью библиотекиpandas
, поэтому она поставляется с большим количеством дополнительных функций-см.attributes
иmethods
при прокрутке внизpd.Series
docs . Это сравнимо сOrderDict
: docs .Для вашего случая использования, использование
pd.Series
илиpd.DataFrame
(который может быть способом использованияnested dictionaries
, поскольку он имеетindex
и несколькоcolumns
), кажется вполне подходящим. Если вы посмотрите на документыpandas
, вы также найдете довольно полную функциональность временных рядов, которая должна прийти удобно для проекта вокруг еженедельных прогнозов продаж.Поскольку
pandas
построен наnumpy
, специализированном научном вычислительном пакете, производительность довольно хорошая.
Ordered dict реализован в составе Python collections lib. Эти коллекции являются очень быстрыми контейнерами для конкретных случаев использования. Если бы вы искали только функциональность, связанную со словарем (например, порядок в этом случае), я бы пошел на это. В то время как вы говорите, что собираетесь сделать более глубокий анализ в области, где панды действительно созданы (например, построение графиков, заполнение недостающих значений). Поэтому я бы рекомендовал вам отправиться за пандами.Серии.