如何在 Python 中为 DataFrame 的一列中的每个字符串添加前缀和后缀?

如何在 python 中为 dataframe 的一列中的每个字符串添加前缀和后缀?

如何在 python 中修改 dataframe 中一列的值

问题描述:
我们有一个包含两列的 dataframe,如下所示:

a b
cm1 b1-name xxxx
cm2 name yyyy
cm3 b3-name name zzzz

需要在 b 列的每个字符串前后都加上 "!a!"。最终结果应为:

a b
cm1 !a!b1-name xxxx!a!
cm2 !a!name yyyy!a!
cm3 !a!b3-name name zzzz!a!

解答:

  1. 创建一个字符串列表,其中包含需要添加的前缀和后缀,例如: s_list = ['!a!', '!a!']。
  2. 遍历 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! 是占位符,用于将字符串中的单词分隔开来。
  1. 最后,使用以下代码查找并打印包含特定字符串的行:
s_idx = df[df['b'].str.contains('!TAB!' + s_list[0] + '!TAB!') == True].index.values
print(s_idx)

通过上面的方法,就可以修改 dataframe 中 b 列的值,并在每个字符串前后添加指定的前缀和后缀。

以上就是如何在 Python 中为 DataFrame 的一列中的每个字符串添加前缀和后缀?的详细内容,更多请关注其它相关文章!