Как имитировать индексные запросы Pandas в Polars?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как имитировать индексные запросы Pandas в Polars?

Сообщение Anonymous »

Есть идеи, что я могу сделать, чтобы имитировать приведенный ниже код pandas, используя поляры? У Polars нет таких индексов, как у pandas, поэтому я не мог понять, что можно сделать.

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

df = pd.DataFrame(data = ([21,123], [132,412], [23, 43]), columns = ['c1', 'c2']).set_index("c1")

out = df.loc[[23, 132]] # polars equivalent of this?

print(pl.from_pandas(out.reset_index()))
и он печатает

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

shape: (2, 2)
┌─────┬─────┐
│ c1  ┆ c2  │
│ --- ┆ --- │
│ i64 ┆ i64 │
╞═════╪═════╡
│ 23  ┆ 43  │
│ 132 ┆ 412 │
└─────┴─────┘
единственное преобразование полярностей, которое я смог придумать, это

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

df = pl.DataFrame(data = ([21,123], [132,412], [23, 43]), schema = ['c1', 'c2'], orient = 'row')
print(df.filter(pl.col("c1").is_in([23, 132])))
но печатает

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

shape: (2, 2)
┌─────┬─────┐
│ c1  ┆ c2  │
│ --- ┆ --- │
│ i64 ┆ i64 │
╞═════╪═════╡
│ 132 ┆ 412 │
│ 23  ┆ 43  │
└─────┴─────┘
это нормально, но строки расположены не в том порядке, который я указал. Я дал [23, 132] и хочу, чтобы выходные строки были в том же порядке, как и выходные данные pandas.
Я могу использовать sort() позже да, но исходные данные, которые я использую, содержат около 30 миллионов строк, поэтому я ищу что-то максимально быстрое.

Подробнее здесь: https://stackoverflow.com/questions/753 ... -in-polars
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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