我有一个具有分类列的 Pandas DataFrame:df = pd.DataFrame({'Source': ['Coronavirus','Sars','sars','coronavirus', 'CoronaVirus','Sars']})df["Source"] = df["Source"].astype('category')print(df) Source0 Coronavirus1 Sars2 sars3 coronavirus4 CoronaVirus5 Sars请注意文本书写方式的差异,例如(冠状病毒与冠状病毒与冠状病毒)。我希望实现的是转换所有相同的文本,即冠状病毒和sars,但不管它是如何写的(首字母大写等),并将它们统一起来。所以所需的输出将是: Source0 Coronavirus1 Sars2 Sars3 Coronavirus4 Coronavirus5 Sars最终结果是如何产生的(冠状病毒或冠状病毒)并不重要。
1 回答

梵蒂冈之花
TA贡献1900条经验 获得超5个赞
使用Series.str.capitalize
因为这个函数默认小写:
df["Source"] = df["Source"].str.capitalize()
如果需要将每个单词分别大写,(如果实际数据值有 2 个或更多单词)使用Series.str.title
,默认情况下也小写:
df["Source"] = df["Source"].str.title()
print (df)
Source
0 Coronavirus
1 Sars
2 Sars
3 Coronavirus
4 Coronavirus
5 Sars
添加回答
举报
0/150
提交
取消