【发布时间】:2021-05-18 19:00:15
【问题描述】:
我正在构建一个 python 模块来帮助我为工作设置文本格式。我使用导入到我们公司的 CRM 中的应用程序和调查数据,因此我试图将“louis-dreyfus”之类的内容转换为“Louis-Dreyfus”,其中名称的开头和连字符后都是大写的。当我在导入数据集的同一个 jupyter 笔记本中写出函数时,我的代码有效,但是当我在模块中写出函数并导入它时,“louis-dreyfus”变成“Louis-dreyfus”。到目前为止,这是我的代码:
def format_names(df_name, col_name):
for idx, val in enumerate(df_name[col_name]):
val = val.strip()
if '-' in val:
split = val.split('-')
n1 = split[0].strip()
n2 = split[1].strip()
n1 = n1.capitalize()
n2 = n2.capitalize()
hyphen_names = n1 + '-' + n2
df_name[col_name].iloc[idx] = hyphen_names
如果我在“if”语句的末尾打印出 df_name[col_name].iloc[idx],我会得到正确的输出“Louis-Dreyfus”,但它似乎不会替换数据框中的值。帮助!
【问题讨论】:
标签: python pandas string format