Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 请删除组的最后一行_Python_Pandas_Pandas Groupby - Fatal编程技术网

Python 请删除组的最后一行

Python 请删除组的最后一行,python,pandas,pandas-groupby,Python,Pandas,Pandas Groupby,我需要删除每个小组的最后一个成员,因为这会扰乱进一步的计算。我不知道如何更好地解释我的问题,但如果您需要进一步澄清,请询问 我当前的代码: sampleDataUser = sampleData.groupby('user').filter(lambda x: x != sampleDataUser.tail(1)) 返回此错误: ValueError: Can only compare identically-labeled DataFrame objects 样本数据: df =

我需要删除每个小组的最后一个成员,因为这会扰乱进一步的计算。我不知道如何更好地解释我的问题,但如果您需要进一步澄清,请询问

我当前的代码:

 sampleDataUser = sampleData.groupby('user').filter(lambda x: x != sampleDataUser.tail(1))
返回此错误:

  ValueError: Can only compare identically-labeled DataFrame objects
样本数据:

df = [{ "user" : "seth", var1 = "5"}, {"user": "seth", "var1" : "8"}, {"user" : "chris", "var1" : "2"}]
预期产出:

df = [{ "user" : "seth", var1 = "5"}, {"user" : "chris", "var1" : "2"}]

对于删除
用户的最后一行
,如果重复,请使用链接方式
|
进行位
或使用链接方式进行掩码和筛选:

详细信息

print (df.assign(m1 = df['user'].duplicated(keep='last'),
                 m2 = ~df['user'].duplicated(keep=False),
                 both = df['user'].duplicated(keep='last') | 
                       ~df['user'].duplicated(keep=False)))
    user var1     m1     m2   both
0   seth   50   True  False   True
1   seth    5   True  False   True
2   seth    8  False  False  False
3  chris    2  False   True   True

对于删除
用户的最后一行
,如果重复,请使用链接方式
|
进行位
或使用链接方式进行掩码和筛选:

详细信息

print (df.assign(m1 = df['user'].duplicated(keep='last'),
                 m2 = ~df['user'].duplicated(keep=False),
                 both = df['user'].duplicated(keep='last') | 
                       ~df['user'].duplicated(keep=False)))
    user var1     m1     m2   both
0   seth   50   True  False   True
1   seth    5   True  False   True
2   seth    8  False  False  False
3  chris    2  False   True   True

可能您希望每个用户只保留第一行:
df.删除重复项('user',keep='first')
?可能您希望每个用户只保留第一行:
df.删除重复项('user',keep='first')