From df079ef4491074fc29e11dc41b9f94a9d6d8f40a Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Mon, 27 Jul 2026 15:42:04 +0000 Subject: [PATCH 1/2] Add taskmd checklists for pandas object types Adds markdown files with checklists of methods and properties for pandas object types in scope for leanframe (DataFrame, DataFrameGroupBy, SeriesGroupBy, Rolling, Expanding, ExponentialMovingWindow, Resampler). The files follow the taskmd format. Co-authored-by: tswast <247555+tswast@users.noreply.github.com> --- tasks/001-dataframe.md | 221 +++++++++++++++++++++++++++ tasks/002-dataframegroupby.md | 78 ++++++++++ tasks/003-seriesgroupby.md | 81 ++++++++++ tasks/004-rolling.md | 32 ++++ tasks/005-expanding.md | 32 ++++ tasks/006-exponentialmovingwindow.md | 23 +++ tasks/007-resampler.md | 48 ++++++ 7 files changed, 515 insertions(+) create mode 100644 tasks/001-dataframe.md create mode 100644 tasks/002-dataframegroupby.md create mode 100644 tasks/003-seriesgroupby.md create mode 100644 tasks/004-rolling.md create mode 100644 tasks/005-expanding.md create mode 100644 tasks/006-exponentialmovingwindow.md create mode 100644 tasks/007-resampler.md diff --git a/tasks/001-dataframe.md b/tasks/001-dataframe.md new file mode 100644 index 0000000..b426de8 --- /dev/null +++ b/tasks/001-dataframe.md @@ -0,0 +1,221 @@ +--- +id: "001" +title: "DataFrame Methods and Properties" +status: pending +--- + +# DataFrame Methods and Properties + +## Objective +Implement all methods and properties for the pandas DataFrame class. + +## Tasks +- [ ] `T` +- [ ] `abs` +- [ ] `add` +- [ ] `add_prefix` +- [ ] `add_suffix` +- [ ] `agg` +- [ ] `aggregate` +- [ ] `align` +- [ ] `all` +- [ ] `any` +- [ ] `apply` +- [ ] `applymap` +- [ ] `asfreq` +- [ ] `asof` +- [ ] `assign` +- [ ] `astype` +- [ ] `at` +- [ ] `at_time` +- [ ] `attrs` +- [ ] `axes` +- [ ] `backfill` +- [ ] `between_time` +- [ ] `bfill` +- [ ] `bool` +- [ ] `boxplot` +- [ ] `clip` +- [ ] `columns` +- [ ] `combine` +- [ ] `combine_first` +- [ ] `compare` +- [ ] `convert_dtypes` +- [ ] `copy` +- [ ] `corr` +- [ ] `corrwith` +- [ ] `count` +- [ ] `cov` +- [ ] `cummax` +- [ ] `cummin` +- [ ] `cumprod` +- [ ] `cumsum` +- [ ] `describe` +- [ ] `diff` +- [ ] `div` +- [ ] `divide` +- [ ] `dot` +- [ ] `drop` +- [ ] `drop_duplicates` +- [ ] `droplevel` +- [ ] `dropna` +- [ ] `dtypes` +- [ ] `duplicated` +- [ ] `empty` +- [ ] `eq` +- [ ] `equals` +- [ ] `eval` +- [ ] `ewm` +- [ ] `expanding` +- [ ] `explode` +- [ ] `ffill` +- [ ] `fillna` +- [ ] `filter` +- [ ] `first` +- [ ] `first_valid_index` +- [ ] `flags` +- [ ] `floordiv` +- [ ] `from_dict` +- [ ] `from_records` +- [ ] `ge` +- [ ] `get` +- [ ] `groupby` +- [ ] `gt` +- [ ] `head` +- [ ] `hist` +- [ ] `iat` +- [ ] `idxmax` +- [ ] `idxmin` +- [ ] `iloc` +- [ ] `index` +- [ ] `infer_objects` +- [ ] `info` +- [ ] `insert` +- [ ] `interpolate` +- [ ] `isetitem` +- [ ] `isin` +- [ ] `isna` +- [ ] `isnull` +- [ ] `items` +- [ ] `iterrows` +- [ ] `itertuples` +- [ ] `join` +- [ ] `keys` +- [ ] `kurt` +- [ ] `kurtosis` +- [ ] `last` +- [ ] `last_valid_index` +- [ ] `le` +- [ ] `loc` +- [ ] `lt` +- [ ] `map` +- [ ] `mask` +- [ ] `max` +- [ ] `mean` +- [ ] `median` +- [ ] `melt` +- [ ] `memory_usage` +- [ ] `merge` +- [ ] `min` +- [ ] `mod` +- [ ] `mode` +- [ ] `mul` +- [ ] `multiply` +- [ ] `ndim` +- [ ] `ne` +- [ ] `nlargest` +- [ ] `notna` +- [ ] `notnull` +- [ ] `nsmallest` +- [ ] `nunique` +- [ ] `pad` +- [ ] `pct_change` +- [ ] `pipe` +- [ ] `pivot` +- [ ] `pivot_table` +- [ ] `plot` +- [ ] `pop` +- [ ] `pow` +- [ ] `prod` +- [ ] `product` +- [ ] `quantile` +- [ ] `query` +- [ ] `radd` +- [ ] `rank` +- [ ] `rdiv` +- [ ] `reindex` +- [ ] `reindex_like` +- [ ] `rename` +- [ ] `rename_axis` +- [ ] `reorder_levels` +- [ ] `replace` +- [ ] `resample` +- [ ] `reset_index` +- [ ] `rfloordiv` +- [ ] `rmod` +- [ ] `rmul` +- [ ] `rolling` +- [ ] `round` +- [ ] `rpow` +- [ ] `rsub` +- [ ] `rtruediv` +- [ ] `sample` +- [ ] `select_dtypes` +- [ ] `sem` +- [ ] `set_axis` +- [ ] `set_flags` +- [ ] `set_index` +- [ ] `shape` +- [ ] `shift` +- [ ] `size` +- [ ] `skew` +- [ ] `sort_index` +- [ ] `sort_values` +- [ ] `sparse` +- [ ] `squeeze` +- [ ] `stack` +- [ ] `std` +- [ ] `style` +- [ ] `sub` +- [ ] `subtract` +- [ ] `sum` +- [ ] `swapaxes` +- [ ] `swaplevel` +- [ ] `tail` +- [ ] `take` +- [ ] `to_clipboard` +- [ ] `to_csv` +- [ ] `to_dict` +- [ ] `to_excel` +- [ ] `to_feather` +- [ ] `to_gbq` +- [ ] `to_hdf` +- [ ] `to_html` +- [ ] `to_json` +- [ ] `to_latex` +- [ ] `to_markdown` +- [ ] `to_numpy` +- [ ] `to_orc` +- [ ] `to_parquet` +- [ ] `to_period` +- [ ] `to_pickle` +- [ ] `to_records` +- [ ] `to_sql` +- [ ] `to_stata` +- [ ] `to_string` +- [ ] `to_timestamp` +- [ ] `to_xarray` +- [ ] `to_xml` +- [ ] `transform` +- [ ] `transpose` +- [ ] `truediv` +- [ ] `truncate` +- [ ] `tz_convert` +- [ ] `tz_localize` +- [ ] `unstack` +- [ ] `update` +- [ ] `value_counts` +- [ ] `values` +- [ ] `var` +- [ ] `where` +- [ ] `xs` diff --git a/tasks/002-dataframegroupby.md b/tasks/002-dataframegroupby.md new file mode 100644 index 0000000..66c5076 --- /dev/null +++ b/tasks/002-dataframegroupby.md @@ -0,0 +1,78 @@ +--- +id: "002" +title: "DataFrameGroupBy Methods and Properties" +status: pending +--- + +# DataFrameGroupBy Methods and Properties + +## Objective +Implement all methods and properties for the pandas DataFrameGroupBy class. + +## Tasks +- [ ] `agg` +- [ ] `aggregate` +- [ ] `all` +- [ ] `any` +- [ ] `apply` +- [ ] `bfill` +- [ ] `boxplot` +- [ ] `corr` +- [ ] `corrwith` +- [ ] `count` +- [ ] `cov` +- [ ] `cumcount` +- [ ] `cummax` +- [ ] `cummin` +- [ ] `cumprod` +- [ ] `cumsum` +- [ ] `describe` +- [ ] `diff` +- [ ] `dtypes` +- [ ] `ewm` +- [ ] `expanding` +- [ ] `ffill` +- [ ] `fillna` +- [ ] `filter` +- [ ] `first` +- [ ] `get_group` +- [ ] `grouper` +- [ ] `groups` +- [ ] `head` +- [ ] `hist` +- [ ] `idxmax` +- [ ] `idxmin` +- [ ] `indices` +- [ ] `keys` +- [ ] `last` +- [ ] `level` +- [ ] `max` +- [ ] `mean` +- [ ] `median` +- [ ] `min` +- [ ] `ndim` +- [ ] `ngroup` +- [ ] `ngroups` +- [ ] `nth` +- [ ] `nunique` +- [ ] `ohlc` +- [ ] `pct_change` +- [ ] `pipe` +- [ ] `plot` +- [ ] `prod` +- [ ] `quantile` +- [ ] `rank` +- [ ] `resample` +- [ ] `rolling` +- [ ] `sample` +- [ ] `sem` +- [ ] `shift` +- [ ] `size` +- [ ] `skew` +- [ ] `std` +- [ ] `sum` +- [ ] `tail` +- [ ] `take` +- [ ] `transform` +- [ ] `value_counts` +- [ ] `var` diff --git a/tasks/003-seriesgroupby.md b/tasks/003-seriesgroupby.md new file mode 100644 index 0000000..cae8e11 --- /dev/null +++ b/tasks/003-seriesgroupby.md @@ -0,0 +1,81 @@ +--- +id: "003" +title: "SeriesGroupBy Methods and Properties" +status: pending +--- + +# SeriesGroupBy Methods and Properties + +## Objective +Implement all methods and properties for the pandas SeriesGroupBy class. + +## Tasks +- [ ] `agg` +- [ ] `aggregate` +- [ ] `all` +- [ ] `any` +- [ ] `apply` +- [ ] `bfill` +- [ ] `corr` +- [ ] `count` +- [ ] `cov` +- [ ] `cumcount` +- [ ] `cummax` +- [ ] `cummin` +- [ ] `cumprod` +- [ ] `cumsum` +- [ ] `describe` +- [ ] `diff` +- [ ] `dtype` +- [ ] `ewm` +- [ ] `expanding` +- [ ] `ffill` +- [ ] `fillna` +- [ ] `filter` +- [ ] `first` +- [ ] `get_group` +- [ ] `grouper` +- [ ] `groups` +- [ ] `head` +- [ ] `hist` +- [ ] `idxmax` +- [ ] `idxmin` +- [ ] `indices` +- [ ] `is_monotonic_decreasing` +- [ ] `is_monotonic_increasing` +- [ ] `keys` +- [ ] `last` +- [ ] `level` +- [ ] `max` +- [ ] `mean` +- [ ] `median` +- [ ] `min` +- [ ] `ndim` +- [ ] `ngroup` +- [ ] `ngroups` +- [ ] `nlargest` +- [ ] `nsmallest` +- [ ] `nth` +- [ ] `nunique` +- [ ] `ohlc` +- [ ] `pct_change` +- [ ] `pipe` +- [ ] `plot` +- [ ] `prod` +- [ ] `quantile` +- [ ] `rank` +- [ ] `resample` +- [ ] `rolling` +- [ ] `sample` +- [ ] `sem` +- [ ] `shift` +- [ ] `size` +- [ ] `skew` +- [ ] `std` +- [ ] `sum` +- [ ] `tail` +- [ ] `take` +- [ ] `transform` +- [ ] `unique` +- [ ] `value_counts` +- [ ] `var` diff --git a/tasks/004-rolling.md b/tasks/004-rolling.md new file mode 100644 index 0000000..6025c53 --- /dev/null +++ b/tasks/004-rolling.md @@ -0,0 +1,32 @@ +--- +id: "004" +title: "Rolling Methods and Properties" +status: pending +--- + +# Rolling Methods and Properties + +## Objective +Implement all methods and properties for the pandas Rolling class. + +## Tasks +- [ ] `agg` +- [ ] `aggregate` +- [ ] `apply` +- [ ] `corr` +- [ ] `count` +- [ ] `cov` +- [ ] `exclusions` +- [ ] `kurt` +- [ ] `max` +- [ ] `mean` +- [ ] `median` +- [ ] `min` +- [ ] `ndim` +- [ ] `quantile` +- [ ] `rank` +- [ ] `sem` +- [ ] `skew` +- [ ] `std` +- [ ] `sum` +- [ ] `var` diff --git a/tasks/005-expanding.md b/tasks/005-expanding.md new file mode 100644 index 0000000..1b71177 --- /dev/null +++ b/tasks/005-expanding.md @@ -0,0 +1,32 @@ +--- +id: "005" +title: "Expanding Methods and Properties" +status: pending +--- + +# Expanding Methods and Properties + +## Objective +Implement all methods and properties for the pandas Expanding class. + +## Tasks +- [ ] `agg` +- [ ] `aggregate` +- [ ] `apply` +- [ ] `corr` +- [ ] `count` +- [ ] `cov` +- [ ] `exclusions` +- [ ] `kurt` +- [ ] `max` +- [ ] `mean` +- [ ] `median` +- [ ] `min` +- [ ] `ndim` +- [ ] `quantile` +- [ ] `rank` +- [ ] `sem` +- [ ] `skew` +- [ ] `std` +- [ ] `sum` +- [ ] `var` diff --git a/tasks/006-exponentialmovingwindow.md b/tasks/006-exponentialmovingwindow.md new file mode 100644 index 0000000..552cfad --- /dev/null +++ b/tasks/006-exponentialmovingwindow.md @@ -0,0 +1,23 @@ +--- +id: "006" +title: "ExponentialMovingWindow Methods and Properties" +status: pending +--- + +# ExponentialMovingWindow Methods and Properties + +## Objective +Implement all methods and properties for the pandas ExponentialMovingWindow class. + +## Tasks +- [ ] `agg` +- [ ] `aggregate` +- [ ] `corr` +- [ ] `cov` +- [ ] `exclusions` +- [ ] `mean` +- [ ] `ndim` +- [ ] `online` +- [ ] `std` +- [ ] `sum` +- [ ] `var` diff --git a/tasks/007-resampler.md b/tasks/007-resampler.md new file mode 100644 index 0000000..2fb2298 --- /dev/null +++ b/tasks/007-resampler.md @@ -0,0 +1,48 @@ +--- +id: "007" +title: "Resampler Methods and Properties" +status: pending +--- + +# Resampler Methods and Properties + +## Objective +Implement all methods and properties for the pandas Resampler class. + +## Tasks +- [ ] `agg` +- [ ] `aggregate` +- [ ] `apply` +- [ ] `asfreq` +- [ ] `bfill` +- [ ] `count` +- [ ] `exclusions` +- [ ] `ffill` +- [ ] `fillna` +- [ ] `first` +- [ ] `get_group` +- [ ] `grouper` +- [ ] `groups` +- [ ] `indices` +- [ ] `interpolate` +- [ ] `keys` +- [ ] `last` +- [ ] `level` +- [ ] `max` +- [ ] `mean` +- [ ] `median` +- [ ] `min` +- [ ] `ndim` +- [ ] `nearest` +- [ ] `ngroups` +- [ ] `nunique` +- [ ] `ohlc` +- [ ] `pipe` +- [ ] `prod` +- [ ] `quantile` +- [ ] `sem` +- [ ] `size` +- [ ] `std` +- [ ] `sum` +- [ ] `transform` +- [ ] `var` From aa543bcd1047838b82241552a7f73c6410b3fdbb Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Mon, 27 Jul 2026 19:14:11 +0000 Subject: [PATCH 2/2] Update taskmd checklists with implemented status Updates the taskmd files by marking off the methods that have already been completed based on the current codebase and spec files. Co-authored-by: tswast <247555+tswast@users.noreply.github.com> --- tasks/001-dataframe.md | 94 +++++++++++++++++++++--------------------- tasks/004-rolling.md | 8 ++-- 2 files changed, 51 insertions(+), 51 deletions(-) diff --git a/tasks/001-dataframe.md b/tasks/001-dataframe.md index b426de8..f052ea0 100644 --- a/tasks/001-dataframe.md +++ b/tasks/001-dataframe.md @@ -17,29 +17,29 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `add_suffix` - [ ] `agg` - [ ] `aggregate` -- [ ] `align` +- [x] `align` - [ ] `all` - [ ] `any` - [ ] `apply` - [ ] `applymap` - [ ] `asfreq` - [ ] `asof` -- [ ] `assign` +- [x] `assign` - [ ] `astype` - [ ] `at` -- [ ] `at_time` +- [x] `at_time` - [ ] `attrs` - [ ] `axes` - [ ] `backfill` -- [ ] `between_time` +- [x] `between_time` - [ ] `bfill` - [ ] `bool` - [ ] `boxplot` - [ ] `clip` -- [ ] `columns` +- [x] `columns` - [ ] `combine` - [ ] `combine_first` -- [ ] `compare` +- [x] `compare` - [ ] `convert_dtypes` - [ ] `copy` - [ ] `corr` @@ -57,9 +57,9 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `dot` - [ ] `drop` - [ ] `drop_duplicates` -- [ ] `droplevel` +- [x] `droplevel` - [ ] `dropna` -- [ ] `dtypes` +- [x] `dtypes` - [ ] `duplicated` - [ ] `empty` - [ ] `eq` @@ -72,41 +72,41 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `fillna` - [ ] `filter` - [ ] `first` -- [ ] `first_valid_index` +- [x] `first_valid_index` - [ ] `flags` - [ ] `floordiv` -- [ ] `from_dict` -- [ ] `from_records` +- [x] `from_dict` +- [x] `from_records` - [ ] `ge` -- [ ] `get` +- [x] `get` - [ ] `groupby` - [ ] `gt` - [ ] `head` - [ ] `hist` - [ ] `iat` -- [ ] `idxmax` -- [ ] `idxmin` -- [ ] `iloc` -- [ ] `index` +- [x] `idxmax` +- [x] `idxmin` +- [x] `iloc` +- [x] `index` - [ ] `infer_objects` - [ ] `info` - [ ] `insert` - [ ] `interpolate` -- [ ] `isetitem` +- [x] `isetitem` - [ ] `isin` - [ ] `isna` - [ ] `isnull` -- [ ] `items` -- [ ] `iterrows` -- [ ] `itertuples` +- [x] `items` +- [x] `iterrows` +- [x] `itertuples` - [ ] `join` -- [ ] `keys` +- [x] `keys` - [ ] `kurt` - [ ] `kurtosis` - [ ] `last` -- [ ] `last_valid_index` +- [x] `last_valid_index` - [ ] `le` -- [ ] `loc` +- [x] `loc` - [ ] `lt` - [ ] `map` - [ ] `mask` @@ -114,7 +114,7 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `mean` - [ ] `median` - [ ] `melt` -- [ ] `memory_usage` +- [x] `memory_usage` - [ ] `merge` - [ ] `min` - [ ] `mod` @@ -131,8 +131,8 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `pad` - [ ] `pct_change` - [ ] `pipe` -- [ ] `pivot` -- [ ] `pivot_table` +- [x] `pivot` +- [x] `pivot_table` - [ ] `plot` - [ ] `pop` - [ ] `pow` @@ -143,18 +143,18 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `radd` - [ ] `rank` - [ ] `rdiv` -- [ ] `reindex` -- [ ] `reindex_like` +- [x] `reindex` +- [x] `reindex_like` - [ ] `rename` -- [ ] `rename_axis` -- [ ] `reorder_levels` +- [x] `rename_axis` +- [x] `reorder_levels` - [ ] `replace` - [ ] `resample` -- [ ] `reset_index` +- [x] `reset_index` - [ ] `rfloordiv` - [ ] `rmod` - [ ] `rmul` -- [ ] `rolling` +- [x] `rolling` - [ ] `round` - [ ] `rpow` - [ ] `rsub` @@ -162,27 +162,27 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `sample` - [ ] `select_dtypes` - [ ] `sem` -- [ ] `set_axis` +- [x] `set_axis` - [ ] `set_flags` -- [ ] `set_index` +- [x] `set_index` - [ ] `shape` - [ ] `shift` - [ ] `size` - [ ] `skew` -- [ ] `sort_index` +- [x] `sort_index` - [ ] `sort_values` - [ ] `sparse` - [ ] `squeeze` -- [ ] `stack` +- [x] `stack` - [ ] `std` - [ ] `style` - [ ] `sub` - [ ] `subtract` - [ ] `sum` -- [ ] `swapaxes` -- [ ] `swaplevel` +- [x] `swapaxes` +- [x] `swaplevel` - [ ] `tail` -- [ ] `take` +- [x] `take` - [ ] `to_clipboard` - [ ] `to_csv` - [ ] `to_dict` @@ -207,15 +207,15 @@ Implement all methods and properties for the pandas DataFrame class. - [ ] `to_xarray` - [ ] `to_xml` - [ ] `transform` -- [ ] `transpose` +- [x] `transpose` - [ ] `truediv` -- [ ] `truncate` -- [ ] `tz_convert` -- [ ] `tz_localize` -- [ ] `unstack` -- [ ] `update` +- [x] `truncate` +- [x] `tz_convert` +- [x] `tz_localize` +- [x] `unstack` +- [x] `update` - [ ] `value_counts` -- [ ] `values` +- [x] `values` - [ ] `var` - [ ] `where` -- [ ] `xs` +- [x] `xs` diff --git a/tasks/004-rolling.md b/tasks/004-rolling.md index 6025c53..cfaa785 100644 --- a/tasks/004-rolling.md +++ b/tasks/004-rolling.md @@ -14,12 +14,12 @@ Implement all methods and properties for the pandas Rolling class. - [ ] `aggregate` - [ ] `apply` - [ ] `corr` -- [ ] `count` +- [x] `count` - [ ] `cov` - [ ] `exclusions` - [ ] `kurt` - [ ] `max` -- [ ] `mean` +- [x] `mean` - [ ] `median` - [ ] `min` - [ ] `ndim` @@ -27,6 +27,6 @@ Implement all methods and properties for the pandas Rolling class. - [ ] `rank` - [ ] `sem` - [ ] `skew` -- [ ] `std` -- [ ] `sum` +- [x] `std` +- [x] `sum` - [ ] `var`