Python 是否基于列合并重复项?
这是我的情况-Python 是否基于列合并重复项?,python,pandas,grouping,Python,Pandas,Grouping,这是我的情况- In[9]: df Out[9]: fruit val1 val2 0 Orange 1 1 1 orANGE 2 2 2 apple 3 3 3 APPLE 4 4 4 mango 5 5 5 appLE 6 6 In[10]: type(df) Out[10]: pandas.core.frame.DataFrame 如何删除不区分大小写的重复
In[9]: df
Out[9]:
fruit val1 val2
0 Orange 1 1
1 orANGE 2 2
2 apple 3 3
3 APPLE 4 4
4 mango 5 5
5 appLE 6 6
In[10]: type(df)
Out[10]: pandas.core.frame.DataFrame
如何删除不区分大小写的重复项,以使生成的结果
随着val1
作为每个val1
s和val2
作为每个val2
s的和而降低
预期结果:
fruit val1 val2
0 orange 3 3
1 apple 13 13
2 mango 5 5
分两步进行:
df['fruit'] = df['fruit'].map(lambda x: x.lower())
res = df.groupby('fruit').sum()
res
# val1 val2
# fruit
# apple 13 13
# mango 5 5
# orange 3 3
要恢复您的结构,请执行以下操作:
res.reset_index()
根据注释,下套管可采用更直接的方式完成,如下所示:
df['fruit'] = df['fruit'].str.lower()
您可以在此处使用
df['fruit'].str.lower()
而不是map
。df.groupby(df.fruit.str.lower()).sum().reset_index()
。