Ссылка на поляры.DataFrame.height в with_columnsPython

Программы на Python
Anonymous
Ссылка на поляры.DataFrame.height в with_columns

Сообщение Anonymous »

Возьмем этот пример:

Код: Выделить всё

df = (polars
.DataFrame(dict(
j=polars.datetime_range(datetime.date(2023, 1, 1), datetime.date(2023, 1, 3), '8h', closed='left', eager=True),
))
.with_columns(
k=polars.lit(numpy.random.randint(10, 99, 6)),
)
)

j                    k
2023-01-01 00:00:00  47
2023-01-01 08:00:00  22
2023-01-01 16:00:00  82
2023-01-02 00:00:00  19
2023-01-02 08:00:00  85
2023-01-02 16:00:00  15
shape: (6, 2)
Здесь numpy.random.randint(10, 99, 6) использует жестко запрограммированное значение 6 в качестве высоты DataFrame, поэтому оно не будет работать если бы я изменился, например. интервал с 8 часов до 4 часов (что потребует изменения с 6 на 12).
Я знаю, что могу сделать это, разорвать цепочку:

Код: Выделить всё

df = polars.DataFrame(dict(
j=polars.datetime_range(datetime.date(2023, 1, 1), datetime.date(2023, 1, 3), '4h', closed='left', eager=True),
))

df = df.with_columns(
k=polars.lit(numpy.random.randint(10, 99, df.height)),
)

j                    k
2023-01-01 00:00:00  47
2023-01-01 04:00:00  22
2023-01-01 08:00:00  82
2023-01-01 12:00:00  19
2023-01-01 16:00:00  85
2023-01-01 20:00:00  15
2023-01-02 00:00:00  89
2023-01-02 04:00:00  74
2023-01-02 08:00:00  26
2023-01-02 12:00:00  11
2023-01-02 16:00:00  86
2023-01-02 20:00:00  81
shape: (12, 2)
Есть ли способ сделать это (т. е. ссылку на df.height или эквивалент) в одном связанном выражении?

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

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