Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.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_Dataframe - Fatal编程技术网

Python 删除重复姓氏

Python 删除重复姓氏,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框,其中有人的名字和一些不正确的姓氏,因为硒刮擦 所以我想把它们去掉 输入: TEXT TYPE 0 Barrack Obama PERSON 1 Obama PERSON 2 Don Beyer PERSON 3 Doug Wilson PERSON 4 Wilson PERSON 5 Thomas PERSON 预期产量 TEXT TYP

我有一个数据框,其中有人的名字和一些不正确的姓氏,因为硒刮擦 所以我想把它们去掉

输入:

            TEXT    TYPE
0  Barrack Obama  PERSON
1          Obama  PERSON
2      Don Beyer  PERSON
3    Doug Wilson  PERSON
4         Wilson  PERSON
5         Thomas  PERSON

预期产量

            TEXT    TYPE
0  Barrack Obama  PERSON
1      Don Beyer  PERSON
2    Doug Wilson  PERSON
3         Thomas  PERSON

如果文本中没有您的数据,我将不会测试以下内容,这应该是可行的:

df.groupby(df.TEXT.str.extract('(\w*)$')[0],
           sort=False, as_index=False
          ).first()
输出:

            TEXT    TYPE
0  Barrack Obama  PERSON
1      Don Beyer  PERSON
2    Doug Wilson  PERSON
3         Thomas  PERSON

下面是另一种使用

或:

或:



1.不要将数据作为图片包含在内。2.为什么输入和输出看起来相同?@QuangHoang更新了输入Pic@QuangHoang文本格式输出中的数据为:“”的Grouper不是一维的
df[~df['TEXT'].str.split().str[-1].duplicated()]
df[~df['TEXT'].str.split(expand=True).ffill(1).iloc[:,-1].duplicated()]
df[~df['TEXT'].str.split(expand=True).ffill(1).duplicated([1])]
            TEXT    TYPE
0  Barrack Obama  PERSON
2      Don Beyer  PERSON
3    Doug Wilson  PERSON
5         Thomas  PERSON