Python 熊猫:对数据帧单元格中的唯一值求和

Python 熊猫:对数据帧单元格中的唯一值求和,python,pandas,Python,Pandas,我有以下简略的数据帧: url='https://raw.githubusercontent.com/108michael/ms_thesis/master/mpl.Bspons.merge.2' df=df.reset_index() df.head() df['billsum'] = df.groupby(['date', 'catcode','disposition', 'id.fec']).bills.transform('sum') catcode date

我有以下简略的数据帧:

url='https://raw.githubusercontent.com/108michael/ms_thesis/master/mpl.Bspons.merge.2'

df=df.reset_index()
df.head()

df['billsum'] = df.groupby(['date', 'catcode','disposition', 'id.fec']).bills.transform('sum')
    catcode     date    bills   id.fec  disposition     billsum
0   B1000   2013    hr2575-113  H0IN09070   support     hr2575-113
1   B2000   2013    hr2575-113  H0IN09070   support     hr2575-113
2   B3000   2013    hr2575-113  H0IN09070   support     hr2575-113hr2575-113
3   B6000   2013    hr2575-113  H0IN09070   support     hr2575-113hr2575-113hr2575-113hr2575-113hr2575...
4   B2000   2007    s1782-110   S8WI00026   oppose  s1782-110
问题是我只想对列
billsum
求和,而不是输出所有账单。当我尝试使用

df['billsum'] = df.groupby(['date', 'catcode','disposition', 'id.fec']).bills.transform('size')
我得到以下信息

    catcode     date    bills   id.fec  disposition     billsum
0   B1000   2013    hr2575-113  H0IN09070   support     1
1   B2000   2013    hr2575-113  H0IN09070   support     1
2   B3000   2013    hr2575-113  H0IN09070   support     2
3   B6000   2013    hr2575-113  H0IN09070   support     5
4   B2000   2007    s1782-110   S8WI00026   oppose  1

df.to_csv('mpl.billsum', index_col=0)

但我需要的是唯一值的总和。在我上面的简短df中,没有唯一的值,但在更大的数据库中有唯一的值。有人对此有想法吗?

在这种情况下,您的预期输出是什么?@MichaelPerdue,输出没有意义,因为所有输出都更新为1。如果是这种情况,请使用df['billcount']=1。我将更新我的问题以提供更多细节。请稍等。你是在问
df.groupby('catcode')['billsum'].nunique()
还是
df.groupby('catcode')['billsum'].transform('nunique')
?你能把问题的标题描述得更清楚一点吗?(即,在标题中包含关键字“熊猫”和“数据帧”)。从标题和问题来看,不清楚什么类型的对象
df
。在这种情况下,您的预期输出是什么?@MichaelPerdue,输出没有意义,因为所有对象都更新为1。如果是这种情况,请使用df['billcount']=1。我将更新我的问题以提供更多细节。请稍等。你是在问
df.groupby('catcode')['billsum'].nunique()
还是
df.groupby('catcode')['billsum'].transform('nunique')
?你能把问题的标题描述得更清楚一点吗?(即,在标题中包含关键字“熊猫”和“数据帧”)。从标题和问题来看,不清楚什么是对象
df