Spec-Zone.ru › Polars

polars.from_dicts

polars.from_dicts(
    data: Iterable[Mapping[str,
    Any]],
    schema: SchemaDefinition | None = None,
    *,
    schema_overrides: SchemaDict | None = None,
    strict: bool = True,
    infer_schema_length: int | None = 100,
) → DataFrame

Создает DataFrame из последовательности словарей. Эта операция клонирует данные.

Параметры:
data

Последовательность словарей, сопоставляющих имена столбцов со значениями

schemaSequence of str, (str,DataType) pairs, or a {str:DataType,} dict

Схему DataFrame можно задать несколькими способами:

  • В виде словаря пар {имя:тип}; если тип равен None, он будет определен автоматически.
  • В виде списка имен столбцов; в этом случае типы определяются автоматически.
  • В виде списка пар (имя,тип); это эквивалентно форме со словарем.

Если предоставлен список имен столбцов, который НЕ соответствует именам в исходных данных, указанные здесь имена заменят фактические имена полей в порядке их следования — однако в этом случае обычно понятнее переименовать столбцы после загрузки фрейма.

Если вы хотите отбросить некоторые поля из входных словарей, можно объявить частичную схему, и в этом случае пропущенные поля не будут загружены. Аналогичным образом можно дополнить загруженный фрейм пустыми столбцами, добавив их в схему.

schema_overridesdict, default None

Позволяет переопределить выведенные типы для одного или нескольких столбцов.

strictbool, default True

Вызывает ошибку, если какое-либо значение data точно не соответствует заданному или выведенному типу данных для этого столбца. Если задано значение False, значения, не соответствующие типу данных, преобразуются к этому типу данных или, если преобразование невозможно, заменяются на null.

infer_schema_length

Максимальное количество строк для анализа при выводе схемы. Если задано значение None, могут быть проанализированы все данные (это медленно).

Возвращает:
DataFrame

Примеры

>>> data = [{"a": 1, "b": 4}, {"a": 2, "b": 5}, {"a": 3, "b": 6}]
>>> df = pl.from_dicts(data)
>>> df
shape: (3, 2)
┌─────┬─────┐
│ a   ┆ b   │
│ --- ┆ --- │
│ i64 ┆ i64 │
╞═════╪═════╡
│ 1   ┆ 4   │
│ 2   ┆ 5   │
│ 3   ┆ 6   │
└─────┴─────┘

Объявление частичной схемы schema приведет к удалению пропущенных столбцов.

>>> df = pl.from_dicts(data, schema={"a": pl.Int32})
>>> df
shape: (3, 1)
┌─────┐
│ a   │
│ --- │
│ i32 │
╞═════╡
│ 1   │
│ 2   │
│ 3   │
└─────┘

Можно также использовать параметр schema, чтобы дополнить загруженные столбцы одним или несколькими дополнительными (пустыми) столбцами, отсутствующими во входных словарях:

>>> pl.from_dicts(
...     data,
...     schema=["a", "b", "c", "d"],
...     schema_overrides={"c": pl.Float64, "d": pl.String},
... )
shape: (3, 4)
┌─────┬─────┬──────┬──────┐
│ a   ┆ b   ┆ c    ┆ d    │
│ --- ┆ --- ┆ ---  ┆ ---  │
│ i64 ┆ i64 ┆ f64  ┆ str  │
╞═════╪═════╪══════╪══════╡
│ 1   ┆ 4   ┆ null ┆ null │
│ 2   ┆ 5   ┆ null ┆ null │
│ 3   ┆ 6   ┆ null ┆ null │
└─────┴─────┴──────┴──────┘

© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/api/polars.from_dicts.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API