
【解决方法一】切分字符串
# 测试数据
import pandas as pd
dic = {'name':['lily','lida','lili'],
'sex':['男','女','男性'],
'address':['北京','上海','天津']}
df = pd.DataFrame(data= dic)
df

df['sex'] = df['sex'].apply(lambda x:x[0])
df

【解决方法二】自定义函数
def rename_gender(gender):
if gender == '男性':
return '男'
return gender
data['sex'] = data['sex'].apply(rename_gender)
【解决方法三】where
filter1 = df['性别']=='男'
filter2 = df['性别']=='女'
dfs = df.where(filter1 | filter2,'男')
dfs
说明:where()方法用于检查一个或多个条件的数据帧,并相应地返回结果。默认情况下,不满足条件的行将填充为NaN值。
Syntax
DataFrame.where(cond,other = nan,inplace = False,axis = None,level = None,错误='raise',try_cast = False,raise_on_error = None)
- Parameters:
- cond:一种或多种条件来检查数据帧。
- other :用用户定义的对象替换不满足条件的行,默认为NaN
- inplace:布尔值,如果True
- axis :要检查的轴(行或列), 则对数据框本身进行更改
希望本文的内容对大家的学习或者工作能带来一定的帮助,每天进步一点点,加油❤。
网友评论