我正在使用Kaggle提供的Titanic数据集.我在数据框中有它,我想将“性别”列的大小写更改为小写.我正在使用以下代码
import pandas as pd
df = pd.read_csv('titanic.csv')
print dfFull['sex'].unique()
df.sex.str.lower()
#check if it worked
print df['sex'].unique()
并尝试
DF [ ‘性’].str.lower()
但是当我运行df [‘sex’] .unique()我得到三个独特的值[男,女,女].
为什么我的代码不会降低字符串的大小写并将其保存回数据帧,所以我从.unique方法得到[男性,女性]?
解决方法:
str.lower()不会修改现有列.它只返回一个应用了小写变换的新系列.如果要覆盖原始列,则需要将结果分配给它:
df['sex'] = df.sex.str.lower()