polars.testing.parametric.series
-
Стратегия Hypothesis для создания объектов Series Polars.
Предупреждение
В настоящее время эта функциональность считается нестабильной. Она может быть изменена в любой момент, и это не будет считаться нарушающим обратную совместимость изменением.
- Параметры:
-
-
name{str, strategy}, optional -
строковый литерал или стратегия для строк (или None), передаваемые параметру name конструктора Series.
-
dtypePolarsDataType, optional -
допустимый тип данных Polars для результирующего ряда.
-
min_sizeint -
если точный размер не задан, здесь можно указать минимальный (по умолчанию 0). Ничего не делает, если задан
size. -
max_sizeint -
если точный размер не задан, здесь можно указать максимальное значение (по умолчанию MAX_DATA_SIZE). Ничего не делает, если задан
size. -
strategystrategy, optional -
позволяет переопределить стратегию по умолчанию для указанного dtype.
-
allow_nullbool -
Разрешить null в качестве возможных значений и по умолчанию разрешить тип данных
Null. -
allow_chunksbool -
Разрешить Series содержать несколько чанков.
-
allow_masked_outbool -
Разрешить null содержать замаскированные элементы.
-
uniquebool, optional -
указывает, должны ли все значения Series быть уникальными.
-
allowed_dtypes{list,set}, optional -
при автоматической генерации данных Series разрешить только эти типы данных.
-
excluded_dtypes{list,set}, optional -
при автоматической генерации данных Series исключить эти типы данных.
- allow_time_zones
-
Разрешить создание объектов Series типа
Datetimeс часовым поясом. - **kwargs
-
Дополнительные именованные аргументы, передаваемые базовым стратегиям генерации данных.
-
sizeint, optional -
если задано, создает Series точно такого размера (параметры min_size/max_size игнорируются).
Устарело с версии 1.0.0: Вместо этого используйте
min_sizeиmax_size. -
null_probabilityfloat -
Вероятность (от 0.0 до 1.0), что любое значение Series будет null. Применяется независимо от любых значений None, сгенерированных базовой стратегией.
Устарело с версии 0.20.26: Вместо этого используйте
allow_null. -
allow_infinitiesbool, optional -
Разрешить генерацию значений +/-inf для типов данных с плавающей точкой.
Устарело с версии 0.20.26: Вместо этого используйте
allow_infinity.
-
Примечания
На практике это используется как декоратор модульного теста, предоставляющий стратегию, которая генерирует несколько объектов Series с заданными характеристиками типа данных и размера для теста. При разработке стратегии или теста также может быть полезно напрямую вызвать
.example()для заданной стратегии, чтобы увидеть конкретные примеры сгенерированных данных.Примеры
Обычно стратегия используется для генерации рядов в модульном тесте:
>>> from polars.testing.parametric import series >>> from hypothesis import given >>> @given(s=series(min_size=3, max_size=5)) ... def test_series_len(s: pl.Series) -> None: ... assert 3 <= s.len() <= 5
Также можно интерактивно генерировать примеры с помощью метода
.example(). Не следует делать этого во время выполнения тестов.>>> from polars.testing.parametric import lists >>> s = series(strategy=lists(pl.String, select_from=["xx", "yy", "zz"])) >>> s.example() shape: (4,) Series: '' [list[str]] [ ["zz", "zz"] ["zz", "xx", "yy"] [] ["xx"] ]
polars.testing.parametric.series(
*,
name: str | SearchStrategy[str] | None = None,
dtype: PolarsDataType | None = None,
min_size: int = 0,
max_size: int = 5,
strategy: SearchStrategy[Any] | None = None,
allow_null: bool = True,
allow_chunks: bool = True,
allow_masked_out: bool = True,
unique: bool = False,
allowed_dtypes: Collection[PolarsDataType] | PolarsDataType | None = None,
excluded_dtypes: Collection[PolarsDataType] | PolarsDataType | None = None,
allow_time_zones: bool = True,
**kwargs: Any,
) → SearchStrategy[ForwardRef('Series')]
© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/api/polars.testing.parametric.series.html