类型提示 Pandas DataFrameGroupBy

Gui*_*ido 7 python type-hinting pandas

我应该如何在Python中输入pandas对象的提示DataFrameGroupBy?我应该只使用pd.DataFrame普通的 pandas 数据框吗?我没有找到任何其他解决方案 atm

Tho*_*mas 11

DataFrameGroupBy本身就是一个适当的类型。因此,如果您正在编写一个必须专门获取实例的函数DataFrameGroupBy

from pandas.core.groupby import DataFrameGroupBy

def my_function(dfgb: DataFrameGroupBy) -> None:
    """Do something with dfgb."""
Run Code Online (Sandbox Code Playgroud)

如果您正在寻找更通用的多态类型,有几种可能性:

  • pandas.core.groupby.GroupBy因为 DataFrameGroupBy 继承自GroupBy[DataFrame].
  • 如果您也想接受实例,则可以使用SeriesunionDataFrameGroupBy和or (如果您打算始终匹配返回值中的输入类型),或者如果您的输出类型不反映输入类型。所有这些类型都在.SeriesGroupByGroupBy[FrameOrSeries]GroupBy[FrameOrSeriesUnion]pandas.core.groupby.generic
  • 您可以根据自己的喜好以多种不同的方式组合上述泛型(和其他泛型)。


小智 6

按照上面的示例,vscode 类型提示仍然无法识别类型。将导入语句更改为以下内容有帮助:

from pandas.core.groupby.generic import DataFrameGroupBy
Run Code Online (Sandbox Code Playgroud)