pandas中使用apply
import pandas as pd
df = pd.DataFrame([['a1','a2', 'a3'], ['b4', 'b5', 'b6']],columns=['A','B','C'])
1.使用apply修改指定列内容
import pandas as pd
df = pd.DataFrame([['a1','a2', 'a3'], ['b4', 'b5', 'b6']],columns=['A','B','C'])
# 将指定列A下字符a,统一修改为d
df['A'] = df['A'].apply(lambda x:str(x).replace('a','d'))
print(df)
输出:
2.groupby配合apply,分组后拼接列里的内容,或者分组后合并为列表
import pandas as pd
df = pd.DataFrame([['a1','b3'], ['a1','b6']],columns=['A','B'])
# 对A列进行分组,用'_'拼接B列的元素
df_1= df.groupby(['A'])['B'].apply(lambda x:x.str.cat(sep='_')).reset_index()
print(df_1)
# 对A列进行分组,将B列的元素存储到列表
df_2= df.groupby(['A'])['B'].apply(list).reset_index()
print(df_2)
输入:
输出: