Python 熊猫-有效的方法?

Python 熊猫-有效的方法?,python,pandas,filter,dataframe,multiple-columns,Python,Pandas,Filter,Dataframe,Multiple Columns,假设我有一个pandas数据框架,其列是['a','b','c']。它们都是整数类型。我想找到与列“c”中每个唯一值对应的列“b”中唯一值的数量,并将其存储在新的数据帧中。我怎么用熊猫来做呢?我试过这样的方法: new_df = pd.DataFrame() for value in df['c'].unique(): x1 = df[df['c']==value] x2 = x1['b'].unique().size new_df.append({'A': x2, 'B

假设我有一个pandas数据框架,其列是['a','b','c']。它们都是整数类型。我想找到与列“c”中每个唯一值对应的列“b”中唯一值的数量,并将其存储在新的数据帧中。我怎么用熊猫来做呢?我试过这样的方法:

new_df = pd.DataFrame()
for value in df['c'].unique():
    x1 = df[df['c']==value]
    x2 = x1['b'].unique().size
    new_df.append({'A': x2, 'B': value}, ignore_index=True)

但这需要太多的时间。有没有一种有效的方法?

如果我理解正确,这应该是可行的:

df.groupby("c")["b"].nunique()

它所做的是针对每个唯一的“c”,返回每个唯一的“b”的计数,而我希望针对每个唯一的“c”,返回唯一的“b”的数量
df.groupby('c')['b'].value_counts()