我有一个数据框,我正在尝试进行一些字符串检查,但是我收到此错误ValueError: cannot reindex from a duplicate axis
这是什么意思?
代码:
#get name titles
def process_name(name):
if 'Mr' in name:
return 'Mr'
elif ('Mrs' in name) or ('Miss' in name):
return 'Mrs'
elif 'Master' in name:
return 'Ms'
else:
return 'Other'
df['Name_Title']=df['Name'].apply(process_name)
数据帧:
答案 0 :(得分:0)
看起来你有重复的索引。您可以使用Index
上的.duplicated
方法找到它们。要么:
df['Name_Title'] = df['Name'].apply(process_name).values
df = df.reset_index()
df['Name_Title'] = df['Name'].apply(process_name)
注意:除非你有充分的理由在pandas DataFrame中索引应该是不同的。
答案 1 :(得分:0)
问题是由于我的功能错位,必须在对数据帧或其结构进行任何其他修改之前放置,或者作为第一次修改。