Pandas:Groupby填充该列

Pandas:Groupby填充该列,pandas,Pandas,我有数据帧。我正在做一个群比和一个恶作剧。发布此消息后,我看不到我分组的列。为什么?我能做些什么来缓解这种情况?我的代码如下: df.groupby(["col1"], as_index=False).fillna(method="ffill") 试试这个: df = df.groupby(["col1"], as_index=False).fillna(method="ffill") df.groupby('c

我有数据帧。我正在做一个群比和一个恶作剧。发布此消息后,我看不到我分组的列。为什么?我能做些什么来缓解这种情况?我的代码如下:

df.groupby(["col1"], as_index=False).fillna(method="ffill")
试试这个:

df = df.groupby(["col1"], as_index=False).fillna(method="ffill")
df.groupby('col1', as_index=False).apply(lambda x: x.fillna(method="ffill"))
试试这个:

df = df.groupby(["col1"], as_index=False).fillna(method="ffill")
df.groupby('col1', as_index=False).apply(lambda x: x.fillna(method="ffill"))
为什么要采用这种方法? 分组依据是-拆分应用合并

分组可分为4个部分

聚合

聚合函数可以直接应用于groupby,因为我们将这些函数应用于组

df.groupby('col1', as_index=False).mean()
转换

转换允许我们对整个组执行一些计算,然后返回组合的数据帧。这是使用transform()函数完成的

df.groupby('col1', as_index=False).transform(lambda x: x.fillna(x.mean()))
过滤

过滤允许我们基于计算丢弃某些值,并仅返回组的一个子集。我们可以使用Pandas中的filter()函数来实现这一点

df.groupby('col1', as_index=False).filter(any_filter_function)
应用

Pandas的apply()函数沿数据帧的轴应用函数。当与GroupBy函数一起使用时,我们可以将任何函数应用于分组结果

df.groupby('col1', as_index=False).apply(lambda x: x.fillna(method="ffill"))

你可以发布一个示例数据框,以及你的熊猫版本吗。对于示例df,在pandas 0.25.1中,您的代码对我来说运行良好