如何在Python中为DataFrame的一列中的每个字符串添加前缀和后缀?
如何在 python 中修改 dataframe 中一列的值
问题描述:
我们有一个包含两列的 dataframe,如下所示:
cm1b1-name xxxxcm2name yyyycm3b3-name name zzzz
需要在 b 列的每个字符串前后都加上 “!a!”。最终结果应为:
cm1!a!b1-name xxxx!a!cm2!a!name yyyy!a!cm3!a!b3-name name zzzz!a!
解答:
- 创建一个字符串列表,其中包含需要添加的前缀和后缀,例如: s_list = [‘!a!’, ‘!a!’]。遍历 dataframe 中的每一行和每一列,并使用以下代码修改 b 列的值:
for i in range(len(s_list)): for j in range(len(s_val)): str = ‘!tab!’ + ‘ ‘.join(s_val[j].split()).replace(‘ ‘,’!tab!’) + ‘!tab!’ df[‘b’][j] = str
在上面的代码中:
s_val 是 b 列中的值列表。str 是新的字符串,包含前缀和后缀。!tab! 是占位符,用于将字符串中的单词分隔开来。
- 最后,使用以下代码查找并打印包含特定字符串的行:
s_idx = df[df[‘b’].str.contains(‘!TAB!’ + s_list[0] + ‘!TAB!’) == True].index.valuesprint(s_idx)
通过上面的方法,就可以修改 dataframe 中 b 列的值,并在每个字符串前后添加指定的前缀和后缀。
以上就是如何在 Python 中为 DataFrame 的一列中的每个字符串添加前缀和后缀?的详细内容,更多请关注范的资源库其它相关文章!