!!
он использует операцию NOT
дважды, !
преобразует значение в boolean
и отменяет его, вот простой пример, чтобы увидеть, как работает !!
:
Поначалу у вас есть:
var zero = 0;
Затем вы выполняете !0
, он будет преобразован в boolean и будет оценен как true
, потому что 0 - falsy
, поэтому вы получаете обратное значение и преобразуется в boolean, поэтому он получает оценку true
.
!zero; //true
, но мы не хотим иметь обратную логическую версию значения, поэтому мы можем отменить ее снова, чтобы получить наш результат! Вот почему мы используем другой !
.
В принципе, !!
убеждают нас, что полученное значение является логическим, а не фальшивым, правдивым или строковым и т. Д. ...
So это похоже на использование функции Boolean
в javascript, но простой и более короткий способ преобразования значения в boolean:
var zero = 0;
!!zero; //false
Просматривая документацию Dask, там говорится, что «в общем случае групповые агрегации Dask.dataframe примерно такой же производительности, как и групповые агрегации Pandas». Поэтому, если вы не используете распределенный клиент Dask для управления рабочими, потоками и т. Д., Преимущества от его использования по сравнению с ванильными пандами не всегда есть.
Кроме того, попробуйте синхронизировать каждый шаг в вашем коде, потому что, если основная часть 6 минут будет занята записью файла .CSV в файл на диске, то снова Dask не поможет (для одного файла). [ 112]
Вот хорошее руководство от Dask по добавлению распределенных планировщиков для ваших задач.