169 похожих чатов

Чем тайдиполарс более тайди, чем сам поларс? Неправильной типизацией!

20 ответов

21 просмотр

А в чём неправильная типизация в tidypolars по сравнению с обычным polars?

Ілія-Малекі Автор вопроса
Ілія Малекі
Например, какой тип desc('colname')?

ну отсылка на специальный класс, в чём неправильность типизации-то? особенно в сравнении с обычным polars

И что? Правда же, тут человек прекрасно и про это все в питоне написал. Питону вообще тихо молчать в сторонке надо. https://habr.com/ru/articles/753672/

Ілія-Малекі Автор вопроса
Александр Севостьянов
ну отсылка на специальный класс, в чём неправильно...

В том, что это система. Из отсутствия написанных в коде типов. Все или спрятано, или строки

Ілія Малекі
В том, что это система. Из отсутствия написанных в...

Это же всё определенный трейдофф между простотой, эксплицитностью и возможностями языка. Ну не пишут ни в pandas, ни в polars, ни в dplyr код, в котором всегда понятны типы объектов. В polars вообще идея, что вы пишете экспрешн, который внутренний интерпретатор потом прогоняет. Конкретный пример с desc это же вообще синтаксический сахар для того, чтобы не использовать ещё более уродливый polars синтаксис df.sort("a", "b", descending=[True, False])

Александр Севостьянов
Это же всё определенный трейдофф между простотой, ...

https://pola-rs.github.io/polars/py-polars/html/reference/dataframe/api/polars.DataFrame.sort.html#polars.DataFrame.sort Там же вообще космос, хочешь массив имён передай, хочешь экспрешены по позициям, а хочешь имена по позициям. Но если колонки в разном порядке нужно использовать, то либо экспрешены, либо имена по позициям

Ілія Малекі
В том, что это система. Из отсутствия написанных в...

В колпаке раст программера все динамические языки такие и есть. Но она полезна для решения многих задач. А тут NSE позволяет скрывать внутреннюю логику, оптимизацию или построение плана запроса. Удобно!

Александр Севостьянов
https://pola-rs.github.io/polars/py-polars/html/re...

Они ещё даже до конца определиться не могут. Уже пару раз синтаксис менялся, пришлось код менять при апгрейдах.

Справедливости ради они пишут что breaking change или что синтаксис экспериментальный, этим все развивающиеся грешат

Ilya Shutov
Они ещё даже до конца определиться не могут. Уже п...

У меня нет как таковой претензии к их синтаксису. Ну да, к нему надо привыкнуть, как и ко всем остальным. Просто я считаю странным ждать от него уровень погружения в детали как у системных ЯП.

Александр Севостьянов
Справедливости ради они пишут что breaking change ...

Я не оценивал, просто то с чем столкнулся. И этого можно ещё ожидать.

Ilya Shutov
Я не оценивал, просто то с чем столкнулся. И этого...

Я обычно скорее удивлён и рад, если у меня программка на R или питоне прожила три года и после обновления всех зависимостей не потребовала переписывания

Ілія-Малекі Автор вопроса
Александр Севостьянов
Так у polars лучше что ли? ))

Да, лучше, у polars все завязано на ленивой колонке в виде Expr

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта