Полярные области: манипуляции со столбцами с помощью dtype, создающие несколько новых столбцов.Python

Программы на Python
Anonymous
 Полярные области: манипуляции со столбцами с помощью dtype, создающие несколько новых столбцов.

Сообщение Anonymous »

С помощью данного кода я хочу создать новые столбцы для каждого столбца, выбранного pl.DATETIME_DTYPES с извлеченным годом.
import polars as pl

data = {"col1": ['2020/01/01', '2020/02/01'], "col2": ['2020/01/01', '2020/02/01']}

df = pl.DataFrame(data, schema={"col1": pl.String, "col2": pl.String})

df = df.with_columns(
pl.col('col1').str.to_datetime(),
pl.col('col2').str.to_datetime()
)

df.with_columns(
pl.col(pl.DATETIME_DTYPES).dt.year()
)

┌──────┬──────┐
│ col1 ┆ col2 │
│ --- ┆ --- │
│ i32 ┆ i32 │
╞══════╪══════╡
│ 2020 ┆ 2020 │
│ 2020 ┆ 2020 │
└──────┴──────┘

Для одного столбца я бы применил .alias(), но что делать с потенциально n новыми столбцами? Любой общий способ?
Например, если я хочу добавить суффикс к существующему имени.
┌─────────────────────┬─────────────────────┬───────────┬───────────┐
│ col1 ┆ col2 ┆ col1_year ┆ col2_year │
│ --- ┆ --- ┆ --- ┆ --- │
│ datetime[μs] ┆ datetime[μs] ┆ i32 ┆ i32 │
╞═════════════════════╪═════════════════════╪═══════════╪═══════════╡
│ 2020-01-01 00:00:00 ┆ 2020-01-01 00:00:00 ┆ 2020 ┆ 2020 │
│ 2020-02-01 00:00:00 ┆ 2020-02-01 00:00:00 ┆ 2020 ┆ 2020 │
└─────────────────────┴─────────────────────┴───────────┴───────────┘


Подробнее здесь: https://stackoverflow.com/questions/779 ... ew-columns

Вернуться в «Python»