| 2545 | |
| 2546 | @derived_from(pd.Series) |
| 2547 | def dot(self, other, meta=no_default): |
| 2548 | if not isinstance(other, FrameBase): |
| 2549 | raise TypeError("The second operand must be a dask dataframe") |
| 2550 | |
| 2551 | if isinstance(other, DataFrame): |
| 2552 | s = self.map_partitions(M.dot, other, meta=meta) |
| 2553 | return s.groupby(by=s.index).apply( |
| 2554 | lambda x: x.sum(skipna=False), meta=s._meta_nonempty |
| 2555 | ) |
| 2556 | |
| 2557 | return self.map_partitions(_dot_series, other, meta=meta).sum(skipna=False) |
| 2558 | |
| 2559 | @derived_from(pd.DataFrame) |
| 2560 | def pipe(self, func, *args, **kwargs): |