From feb79dd502673ee51e4297bca692eb5cb2c94d57 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sat, 16 Mar 2024 10:58:37 +0700 Subject: [PATCH 01/10] pandas.core.groupby.SeriesGroupBy.apply --- pandas/core/groupby/generic.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pandas/core/groupby/generic.py b/pandas/core/groupby/generic.py index 3b20b854b344e..41925531b098d 100644 --- a/pandas/core/groupby/generic.py +++ b/pandas/core/groupby/generic.py @@ -240,6 +240,7 @@ def apply(self, func, *args, **kwargs) -> Series: Returns ------- Series or DataFrame + The resulting dtype will reflect the return value of the passed ``func``. See Also -------- From 093bfe0ad2e922c69f25482ae141eae69c4ffec1 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sat, 16 Mar 2024 11:00:02 +0700 Subject: [PATCH 02/10] pandas.core.groupby.GroupBy.apply --- pandas/core/groupby/groupby.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 5023a4b8bd3dd..0b8817cf7d969 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -1550,6 +1550,7 @@ def apply(self, func, *args, include_groups: bool = True, **kwargs) -> NDFrameT: Returns ------- Series or DataFrame + The resulting dtype will reflect the return value of the passed ``func``. See Also -------- From be885fc84a518e01db081f9d35aa0fb03b47d2ca Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sat, 16 Mar 2024 11:01:50 +0700 Subject: [PATCH 03/10] rm check --- ci/code_checks.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/ci/code_checks.sh b/ci/code_checks.sh index 7f4911037cff9..2fcfd9d1f3105 100755 --- a/ci/code_checks.sh +++ b/ci/code_checks.sh @@ -776,7 +776,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then pandas.core.groupby.SeriesGroupBy.__iter__\ pandas.core.groupby.SeriesGroupBy.agg\ pandas.core.groupby.SeriesGroupBy.aggregate\ - pandas.core.groupby.SeriesGroupBy.apply\ pandas.core.groupby.SeriesGroupBy.cummax\ pandas.core.groupby.SeriesGroupBy.cummin\ pandas.core.groupby.SeriesGroupBy.cumprod\ From 8006d8eea5003746dd3d603221b2834aae87c175 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sat, 16 Mar 2024 11:51:33 +0700 Subject: [PATCH 04/10] add a bunch --- ci/code_checks.sh | 21 --------------------- pandas/core/groupby/generic.py | 5 +++++ pandas/core/groupby/groupby.py | 18 +++++++++++++----- 3 files changed, 18 insertions(+), 26 deletions(-) diff --git a/ci/code_checks.sh b/ci/code_checks.sh index 2fcfd9d1f3105..4abbfe74f5f68 100755 --- a/ci/code_checks.sh +++ b/ci/code_checks.sh @@ -760,33 +760,12 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then pandas.core.groupby.DataFrameGroupBy.aggregate\ pandas.core.groupby.DataFrameGroupBy.apply\ pandas.core.groupby.DataFrameGroupBy.boxplot\ - pandas.core.groupby.DataFrameGroupBy.cummax\ - pandas.core.groupby.DataFrameGroupBy.cummin\ - pandas.core.groupby.DataFrameGroupBy.cumprod\ - pandas.core.groupby.DataFrameGroupBy.cumsum\ - pandas.core.groupby.DataFrameGroupBy.filter\ pandas.core.groupby.DataFrameGroupBy.get_group\ pandas.core.groupby.DataFrameGroupBy.hist\ - pandas.core.groupby.DataFrameGroupBy.mean\ - pandas.core.groupby.DataFrameGroupBy.nunique\ - pandas.core.groupby.DataFrameGroupBy.rank\ - pandas.core.groupby.DataFrameGroupBy.resample\ - pandas.core.groupby.DataFrameGroupBy.skew\ - pandas.core.groupby.DataFrameGroupBy.transform\ pandas.core.groupby.SeriesGroupBy.__iter__\ pandas.core.groupby.SeriesGroupBy.agg\ pandas.core.groupby.SeriesGroupBy.aggregate\ - pandas.core.groupby.SeriesGroupBy.cummax\ - pandas.core.groupby.SeriesGroupBy.cummin\ - pandas.core.groupby.SeriesGroupBy.cumprod\ - pandas.core.groupby.SeriesGroupBy.cumsum\ - pandas.core.groupby.SeriesGroupBy.filter\ pandas.core.groupby.SeriesGroupBy.get_group\ - pandas.core.groupby.SeriesGroupBy.mean\ - pandas.core.groupby.SeriesGroupBy.rank\ - pandas.core.groupby.SeriesGroupBy.resample\ - pandas.core.groupby.SeriesGroupBy.skew\ - pandas.core.groupby.SeriesGroupBy.transform\ pandas.core.resample.Resampler.__iter__\ pandas.core.resample.Resampler.ffill\ pandas.core.resample.Resampler.get_group\ diff --git a/pandas/core/groupby/generic.py b/pandas/core/groupby/generic.py index 41925531b098d..9a80672eb1854 100644 --- a/pandas/core/groupby/generic.py +++ b/pandas/core/groupby/generic.py @@ -601,6 +601,7 @@ def filter(self, func, dropna: bool = True, *args, **kwargs): Returns ------- Series + The filtered subset of the original Series. Notes ----- @@ -1079,6 +1080,7 @@ def skew( Returns ------- Series + Unbiased skew within groups. See Also -------- @@ -1940,6 +1942,7 @@ def filter(self, func, dropna: bool = True, *args, **kwargs) -> DataFrame: Returns ------- DataFrame + The filtered subset of the original DataFrame. Notes ----- @@ -2107,6 +2110,7 @@ def nunique(self, dropna: bool = True) -> DataFrame: Returns ------- nunique: DataFrame + Counts of unique elements in each position. Examples -------- @@ -2505,6 +2509,7 @@ def skew( Returns ------- DataFrame + Unbiased skew within groups. See Also -------- diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 0b8817cf7d969..3525dd4c843cb 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -333,6 +333,7 @@ class providing the base-class of operations. Returns ------- %(klass)s + %(klass)s with the same indexes as the original object filled with transformed values. See Also -------- @@ -2245,6 +2246,7 @@ def mean( Returns ------- pandas.Series or pandas.DataFrame + Mean of values within each group. Same object type as the caller. %(see_also)s Examples -------- @@ -3512,11 +3514,12 @@ def resample(self, rule, *args, include_groups: bool = True, **kwargs) -> Resamp Returns ------- - pandas.api.typing.DatetimeIndexResamplerGroupby, - pandas.api.typing.PeriodIndexResamplerGroupby, or - pandas.api.typing.TimedeltaIndexResamplerGroupby + pandas.api.typing.DatetimeIndexResampler Return a new groupby object, with type depending on the data - being resampled. + being resampled: + - pandas.api.typing.DatetimeIndexResamplerGroupby + - pandas.api.typing.PeriodIndexResamplerGroupby + - pandas.api.typing.TimedeltaIndexResamplerGroupby See Also -------- @@ -4591,7 +4594,8 @@ def rank( Returns ------- - DataFrame with ranking of values within each group + DataFrame + The ranking of values within each group. %(see_also)s Examples -------- @@ -4663,6 +4667,7 @@ def cumprod(self, *args, **kwargs) -> NDFrameT: Returns ------- Series or DataFrame + Cumulative product for each group. Same object type as the caller. %(see_also)s Examples -------- @@ -4721,6 +4726,7 @@ def cumsum(self, *args, **kwargs) -> NDFrameT: Returns ------- Series or DataFrame + Cumulative sum for each group. Same object type as the caller. %(see_also)s Examples -------- @@ -4783,6 +4789,7 @@ def cummin( Returns ------- Series or DataFrame + Cumulative min for each group. Same object type as the caller. %(see_also)s Examples -------- @@ -4853,6 +4860,7 @@ def cummax( Returns ------- Series or DataFrame + Cumulative max for each group. Same object type as the caller. %(see_also)s Examples -------- From ff20a68ff522083b662112a9c198dce9ff6481cf Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sat, 16 Mar 2024 12:41:16 +0700 Subject: [PATCH 05/10] fix --- pandas/core/groupby/groupby.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 3525dd4c843cb..1a34045f1aa5b 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -3517,9 +3517,9 @@ def resample(self, rule, *args, include_groups: bool = True, **kwargs) -> Resamp pandas.api.typing.DatetimeIndexResampler Return a new groupby object, with type depending on the data being resampled: - - pandas.api.typing.DatetimeIndexResamplerGroupby - - pandas.api.typing.PeriodIndexResamplerGroupby - - pandas.api.typing.TimedeltaIndexResamplerGroupby + - pandas.api.typing.DatetimeIndexResamplerGroupby + - pandas.api.typing.PeriodIndexResamplerGroupby + - pandas.api.typing.TimedeltaIndexResamplerGroupby See Also -------- From 050375d2200a4d711289f2081e4f7aa621cd55c8 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sat, 16 Mar 2024 12:45:17 +0700 Subject: [PATCH 06/10] fix --- pandas/core/groupby/groupby.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 1a34045f1aa5b..98194b3dcd771 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -333,7 +333,8 @@ class providing the base-class of operations. Returns ------- %(klass)s - %(klass)s with the same indexes as the original object filled with transformed values. + %(klass)s with the same indexes as the original object filled + with transformed values. See Also -------- From 48e266e7f5e235ee16ce6d0b8e236f80a182f71a Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Sun, 17 Mar 2024 08:11:34 +0700 Subject: [PATCH 07/10] wip --- pandas/core/groupby/generic.py | 2 +- pandas/core/groupby/groupby.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pandas/core/groupby/generic.py b/pandas/core/groupby/generic.py index 9a80672eb1854..c955e58d2960f 100644 --- a/pandas/core/groupby/generic.py +++ b/pandas/core/groupby/generic.py @@ -240,7 +240,7 @@ def apply(self, func, *args, **kwargs) -> Series: Returns ------- Series or DataFrame - The resulting dtype will reflect the return value of the passed ``func``. + A pandas object with the result of applying ``func`` to each group. See Also -------- diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 98194b3dcd771..470acc98d5a7f 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -1552,7 +1552,7 @@ def apply(self, func, *args, include_groups: bool = True, **kwargs) -> NDFrameT: Returns ------- Series or DataFrame - The resulting dtype will reflect the return value of the passed ``func``. + A pandas object with the result of applying ``func`` to each group. See Also -------- From cb2264dcfaa5a17ee642799b846784a2e207fd84 Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Mon, 18 Mar 2024 08:50:39 +0700 Subject: [PATCH 08/10] update pandas.core.groupby.DataFrameGroupBy.resample --- pandas/core/groupby/groupby.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/pandas/core/groupby/groupby.py b/pandas/core/groupby/groupby.py index 470acc98d5a7f..c00cc830d865c 100644 --- a/pandas/core/groupby/groupby.py +++ b/pandas/core/groupby/groupby.py @@ -3515,12 +3515,8 @@ def resample(self, rule, *args, include_groups: bool = True, **kwargs) -> Resamp Returns ------- - pandas.api.typing.DatetimeIndexResampler - Return a new groupby object, with type depending on the data - being resampled: - - pandas.api.typing.DatetimeIndexResamplerGroupby - - pandas.api.typing.PeriodIndexResamplerGroupby - - pandas.api.typing.TimedeltaIndexResamplerGroupby + DatetimeIndexResampler, PeriodIndexResampler or TimdeltaResampler + Resampler object for the type of the index. See Also -------- From 00e9a15745af8231dbe0ec61f6bd651ae04b3f2d Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Wed, 20 Mar 2024 10:39:55 +0700 Subject: [PATCH 09/10] rm check from code_checls --- ci/code_checks.sh | 25 +++---------------------- 1 file changed, 3 insertions(+), 22 deletions(-) diff --git a/ci/code_checks.sh b/ci/code_checks.sh index a9967dcb8efe6..e0bd242e749f0 100755 --- a/ci/code_checks.sh +++ b/ci/code_checks.sh @@ -684,58 +684,39 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then -i "pandas.core.groupby.DataFrameGroupBy.aggregate RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.apply RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.boxplot PR07,RT03,SA01" \ - -i "pandas.core.groupby.DataFrameGroupBy.cummax RT03" \ - -i "pandas.core.groupby.DataFrameGroupBy.cummin RT03" \ - -i "pandas.core.groupby.DataFrameGroupBy.cumprod RT03" \ - -i "pandas.core.groupby.DataFrameGroupBy.cumsum RT03" \ - -i "pandas.core.groupby.DataFrameGroupBy.filter RT03,SA01" \ + -i "pandas.core.groupby.DataFrameGroupBy.filter SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.get_group RT03,SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.groups SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.hist RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.indices SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.max SA01" \ - -i "pandas.core.groupby.DataFrameGroupBy.mean RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.median SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.min SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.nth PR02" \ - -i "pandas.core.groupby.DataFrameGroupBy.nunique RT03,SA01" \ + -i "pandas.core.groupby.DataFrameGroupBy.nunique SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.ohlc SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.plot PR02,SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.prod SA01" \ - -i "pandas.core.groupby.DataFrameGroupBy.rank RT03" \ - -i "pandas.core.groupby.DataFrameGroupBy.resample RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.sem SA01" \ - -i "pandas.core.groupby.DataFrameGroupBy.skew RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.sum SA01" \ - -i "pandas.core.groupby.DataFrameGroupBy.transform RT03" \ -i "pandas.core.groupby.SeriesGroupBy.__iter__ RT03,SA01" \ -i "pandas.core.groupby.SeriesGroupBy.agg RT03" \ -i "pandas.core.groupby.SeriesGroupBy.aggregate RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.apply RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.cummax RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.cummin RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.cumprod RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.cumsum RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.filter PR01,RT03,SA01" \ + -i "pandas.core.groupby.SeriesGroupBy.filter PR01,SA01" \ -i "pandas.core.groupby.SeriesGroupBy.get_group RT03,SA01" \ -i "pandas.core.groupby.SeriesGroupBy.groups SA01" \ -i "pandas.core.groupby.SeriesGroupBy.indices SA01" \ -i "pandas.core.groupby.SeriesGroupBy.is_monotonic_decreasing SA01" \ -i "pandas.core.groupby.SeriesGroupBy.is_monotonic_increasing SA01" \ -i "pandas.core.groupby.SeriesGroupBy.max SA01" \ - -i "pandas.core.groupby.SeriesGroupBy.mean RT03" \ -i "pandas.core.groupby.SeriesGroupBy.median SA01" \ -i "pandas.core.groupby.SeriesGroupBy.min SA01" \ -i "pandas.core.groupby.SeriesGroupBy.nth PR02" \ -i "pandas.core.groupby.SeriesGroupBy.ohlc SA01" \ -i "pandas.core.groupby.SeriesGroupBy.plot PR02,SA01" \ -i "pandas.core.groupby.SeriesGroupBy.prod SA01" \ - -i "pandas.core.groupby.SeriesGroupBy.rank RT03" \ - -i "pandas.core.groupby.SeriesGroupBy.resample RT03" \ -i "pandas.core.groupby.SeriesGroupBy.sem SA01" \ - -i "pandas.core.groupby.SeriesGroupBy.skew RT03" \ -i "pandas.core.groupby.SeriesGroupBy.sum SA01" \ - -i "pandas.core.groupby.SeriesGroupBy.transform RT03" \ -i "pandas.core.resample.Resampler.__iter__ RT03,SA01" \ -i "pandas.core.resample.Resampler.ffill RT03" \ -i "pandas.core.resample.Resampler.get_group RT03,SA01" \ From 7da7f7b40db888695a4832f0bd20b7fbaeb8eb8e Mon Sep 17 00:00:00 2001 From: Quang Nguyen Date: Wed, 20 Mar 2024 11:18:03 +0700 Subject: [PATCH 10/10] minor --- ci/code_checks.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/ci/code_checks.sh b/ci/code_checks.sh index e0bd242e749f0..52d236ae7460d 100755 --- a/ci/code_checks.sh +++ b/ci/code_checks.sh @@ -682,7 +682,6 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then -i "pandas.core.groupby.DataFrameGroupBy.__iter__ RT03,SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.agg RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.aggregate RT03" \ - -i "pandas.core.groupby.DataFrameGroupBy.apply RT03" \ -i "pandas.core.groupby.DataFrameGroupBy.boxplot PR07,RT03,SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.filter SA01" \ -i "pandas.core.groupby.DataFrameGroupBy.get_group RT03,SA01" \