挤压=True在groupby中做什么?

2024-03-28 15:03:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我发现doc说如果可能的话减少返回类型的维数,否则返回一个一致的类型。在

df = pd.DataFrame(
     {'a': np.ones(4, dtype='float32'),
     'b': np.ones(4, dtype='float32'),
     'c': np.zeros(4, dtype='float32')})

df.groupby(df4.index,squeeze=True)['b'].sum()

我看不出有没有变化挤。可以解释我的目的是假的


Tags: 类型dataframedfindexdocnponeszeros
1条回答
网友
1楼 · 发布于 2024-03-28 15:03:47

经过一点研究后,如果可能的话,它被用来减少维数。@Jeff在github中展示的一个例子说明了为什么要使用挤压。它在第here期中有说明。在

df1 = pd.DataFrame(dict(A = range(4), B = 0))

def func(dataf):
    return pd.Series({ dataf.name : 1})


result1 = df1.groupby("B",squeeze=False).apply(func)
   0
B   
0  1
type(result1)
pandas.core.frame.DataFrame

result2 = df1.groupby("B",squeeze=True).apply(func)

B   
0  0    1
Name: 0, dtype: int64

type(result2)
pandas.core.series.Series

如果可能的话,挤压会尽量减小尺寸。正如您在上面看到的,数据帧可以被简化为系列,所以它是通过挤压参数来完成的。使用挤压的情况非常少。在

相关问题 更多 >