Я испытываю странное поведение Даска Series.loc
по отношению к Pandas.loc
.Это то, что я сейчас делаю с серией Dask, у которой в качестве индекса указана метка времени, а в качестве значения столбца - число с плавающей точкой:
ddf.map_partitions([lambda data: data.loc[lambda raw_data: (raw_data.index >= start_date) & (raw_data.index <= end_date)]).compute()
Series.loc
Panda возвращает 6 результатов, тогда как Series.loc
Dask возвращает только 3 результата.
Серия Dask имеет 8 разделов, которые создаются следующим образом:
d_series = ddf.from_pandas(p_series, npartitions=8)
Когда я устанавливаю npartitions=1
, метод Dask Series.loc
возвращает результат, соответствующий Pandas Series.loc
method.
Первоначально я думал, что этот результат был вызван start_date
или end_date
, охватывающим несколько разделов.Но когда я изменяю число разделов от 2 до 8 - и, следовательно, делений - метод Dask Series.loc
всегда возвращает один и тот же неверный результат.Следовательно, я не думаю, что мое start_date
/ end_date
несоответствие с делениями является проблемой.
Есть идеи?