我有一个包含多列的数据框,其中之一是 company_name。我正在尝试根据它们具有相同的 company_name 来删除重复的记录,但是我不知道如何在保持 company_name 的原始大小写的同时执行此操作。
我尝试将所有名称转换为小写,然后删除重复项,但如前所述,我想保留原始大小写。
df = pd.DataFrame({'company_name': ['Apple', 'apple', 'BlackBerry', 'blackberry','Blackberry'])
df['company_name'] = df['company_name'].str.strip()
df['company_name'] = df['company_name'].str.lower()
input_records.drop_duplicates(subset=['company_id'], inplace=True,
keep="first")
Run Code Online (Sandbox Code Playgroud)
此代码消除了重复项,但以全部小写形式存储公司名称。
想要的结果
company_name
Apple
BlackBerry
Run Code Online (Sandbox Code Playgroud)
实际结果
company_name
apple
blackberry
Run Code Online (Sandbox Code Playgroud)
您可以创建一个新列来进行操作。这将使您保持公司名称栏不变。
它可能是这样的:
df = pd.DataFrame({'company_name':['Apple','apple','Blackberry','blackberry']})
company_name
0 Apple
1 apple
2 Blackberry
3 blackberry
df['company_name_2'] = df['company_name'].str.strip()
df['company_name_2'] = df['company_name_2'].str.lower()
df.drop_duplicates(subset=['company_name_2'], inplace=True,
keep="first")
df.drop(columns = 'company_name_2', inplace = True)
df.reset_index(inplace = True, drop = True)
Run Code Online (Sandbox Code Playgroud)
出去 :
company_name
0 Apple
1 Blackberry
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1116 次 |
| 最近记录: |