| 
79 | 79 | if TYPE_CHECKING:  | 
80 | 80 |     from pandas.core.internals import Block  | 
81 | 81 | 
 
  | 
82 |  | -_agg_template = """  | 
83 |  | -Compute {fname} of group values.  | 
84 |  | -
  | 
85 |  | -Parameters  | 
86 |  | -----------  | 
87 |  | -numeric_only : bool, default {no}  | 
88 |  | -    Include only float, int, boolean columns. If None, will attempt to use  | 
89 |  | -    everything, then use only numeric data.  | 
90 |  | -min_count : int, default {mc}  | 
91 |  | -    The required number of valid values to perform the operation. If fewer  | 
92 |  | -    than ``min_count`` non-NA values are present the result will be NA.  | 
93 |  | -
  | 
94 |  | -Returns  | 
95 |  | --------  | 
96 |  | -{return_type}  | 
97 |  | -    Computed {fname} of values within each group.  | 
98 |  | -
  | 
99 |  | -See Also  | 
100 |  | ---------  | 
101 |  | -{return_type}.groupby  | 
102 |  | -"""  | 
103 |  | - | 
104 | 82 | 
 
  | 
105 | 83 | NamedAgg = namedtuple("NamedAgg", ["column", "aggfunc"])  | 
106 | 84 | # TODO(typing) the return value on this callable should be any *scalar*.  | 
@@ -811,27 +789,27 @@ def count(self) -> Series:  | 
811 | 789 |         )  | 
812 | 790 |         return self._reindex_output(result, fill_value=0)  | 
813 | 791 | 
 
  | 
814 |  | -    @doc(_agg_template, fname="sum", no=True, mc=0, return_type="Series")  | 
 | 792 | +    @doc(GroupBy.sum.__doc__)  | 
815 | 793 |     def sum(self, numeric_only: bool = True, min_count: int = 0) -> Series:  | 
816 | 794 |         return super().sum(numeric_only=numeric_only, min_count=min_count)  | 
817 | 795 | 
 
  | 
818 |  | -    @doc(_agg_template, fname="prod", no=True, mc=0, return_type="Series")  | 
 | 796 | +    @doc(GroupBy.prod.__doc__)  | 
819 | 797 |     def prod(self, numeric_only: bool = True, min_count: int = 0) -> Series:  | 
820 | 798 |         return super().prod(numeric_only=numeric_only, min_count=min_count)  | 
821 | 799 | 
 
  | 
822 |  | -    @doc(_agg_template, fname="min", no=False, mc=-1, return_type="Series")  | 
 | 800 | +    @doc(GroupBy.min.__doc__)  | 
823 | 801 |     def min(self, numeric_only: bool = False, min_count: int = -1) -> Series:  | 
824 | 802 |         return super().min(numeric_only=numeric_only, min_count=min_count)  | 
825 | 803 | 
 
  | 
826 |  | -    @doc(_agg_template, fname="max", no=False, mc=-1, return_type="Series")  | 
 | 804 | +    @doc(GroupBy.max.__doc__)  | 
827 | 805 |     def max(self, numeric_only: bool = False, min_count: int = -1) -> Series:  | 
828 | 806 |         return super().max(numeric_only=numeric_only, min_count=min_count)  | 
829 | 807 | 
 
  | 
830 |  | -    @doc(_agg_template, fname="first", no=False, mc=-1, return_type="Series")  | 
 | 808 | +    @doc(GroupBy.first.__doc__)  | 
831 | 809 |     def first(self, numeric_only: bool = False, min_count: int = -1) -> Series:  | 
832 | 810 |         return super().first(numeric_only=numeric_only, min_count=min_count)  | 
833 | 811 | 
 
  | 
834 |  | -    @doc(_agg_template, fname="last", no=False, mc=-1, return_type="Series")  | 
 | 812 | +    @doc(GroupBy.last.__doc__)  | 
835 | 813 |     def last(self, numeric_only: bool = False, min_count: int = -1) -> Series:  | 
836 | 814 |         return super().last(numeric_only=numeric_only, min_count=min_count)  | 
837 | 815 | 
 
  | 
@@ -1909,27 +1887,27 @@ def groupby_series(obj, col=None):  | 
1909 | 1887 |             results.index = ibase.default_index(len(results))  | 
1910 | 1888 |         return results  | 
1911 | 1889 | 
 
  | 
1912 |  | -    @doc(_agg_template, fname="sum", no=True, mc=0, return_type="DataFrame")  | 
 | 1890 | +    @doc(GroupBy.sum.__doc__)  | 
1913 | 1891 |     def sum(self, numeric_only: bool = True, min_count: int = 0) -> DataFrame:  | 
1914 | 1892 |         return super().sum(numeric_only=numeric_only, min_count=min_count)  | 
1915 | 1893 | 
 
  | 
1916 |  | -    @doc(_agg_template, fname="prod", no=True, mc=0, return_type="DataFrame")  | 
 | 1894 | +    @doc(GroupBy.prod.__doc__)  | 
1917 | 1895 |     def prod(self, numeric_only: bool = True, min_count: int = 0) -> DataFrame:  | 
1918 | 1896 |         return super().prod(numeric_only=numeric_only, min_count=min_count)  | 
1919 | 1897 | 
 
  | 
1920 |  | -    @doc(_agg_template, fname="min", no=False, mc=-1, return_type="DataFrame")  | 
 | 1898 | +    @doc(GroupBy.min.__doc__)  | 
1921 | 1899 |     def min(self, numeric_only: bool = False, min_count: int = -1) -> DataFrame:  | 
1922 | 1900 |         return super().min(numeric_only=numeric_only, min_count=min_count)  | 
1923 | 1901 | 
 
  | 
1924 |  | -    @doc(_agg_template, fname="max", no=False, mc=-1, return_type="DataFrame")  | 
 | 1902 | +    @doc(GroupBy.max.__doc__)  | 
1925 | 1903 |     def max(self, numeric_only: bool = False, min_count: int = -1) -> DataFrame:  | 
1926 | 1904 |         return super().max(numeric_only=numeric_only, min_count=min_count)  | 
1927 | 1905 | 
 
  | 
1928 |  | -    @doc(_agg_template, fname="first", no=False, mc=-1, return_type="DataFrame")  | 
 | 1906 | +    @doc(GroupBy.first.__doc__)  | 
1929 | 1907 |     def first(self, numeric_only: bool = False, min_count: int = -1) -> DataFrame:  | 
1930 | 1908 |         return super().first(numeric_only=numeric_only, min_count=min_count)  | 
1931 | 1909 | 
 
  | 
1932 |  | -    @doc(_agg_template, fname="last", no=False, mc=-1, return_type="DataFrame")  | 
 | 1910 | +    @doc(GroupBy.last.__doc__)  | 
1933 | 1911 |     def last(self, numeric_only: bool = False, min_count: int = -1) -> DataFrame:  | 
1934 | 1912 |         return super().last(numeric_only=numeric_only, min_count=min_count)  | 
1935 | 1913 | 
 
  | 
 | 
0 commit comments