英文:
How do I add a suffix to every value in one column in pandas
问题
如何在pandas中将前缀更改为后缀?
英文:
I keep trying to add a suffix to every single value in one column in a dataframe. I accidentally added what I wanted to be a suffix as a prefix. I don't know how to fix this. How do I change the prefix to a suffix in pandas?
答案1
得分: 1
如果您的前缀对于每一列都相同且具有固定长度,则可以使用df[column].str[prefix_length:]
将其修剪掉。例如,您的前缀是'_asdf',所以您想要从列中修剪掉前四个字符,可以使用df[column].str[4:]
。
要添加后缀,您可以使用df[column] = df[column] + suffix
。
英文:
If your prefix is the same for every column and thus has a fixed length, you can trim that off using df[column].str[prefix_length:]
. E.g. your prefix is '_asdf', so you want to trim off the first four characters from your column with df[column].str[4:]
.
To add a suffix, you can use df[column] = df[column] + suffix
答案2
得分: 0
你可以使用 str
访问器将前缀转换为后缀。
假设以下数据框:
>>> df
col1
0 _suffixHello
1 _suffixWorld
使用 str.replace
:
df['col1'] = df['col1'].str.replace(r'(_suffix)(.*)', r'', regex=True)
print(df)
# 输出
col1
0 Hello_suffix
1 World_suffix
或者使用 str.slice
:
suffix = '_suffix'
df['col1'] = df['col1'].str.slice(len(suffix)) + suffix
# 与以下方式相同
# df['col1'].str[len(suffix):] + suffix
print(df)
# 输出
col1
0 Hello_suffix
1 World_suffix
英文:
You can use str
accessor to transform prefix as suffix.
Suppose the following dataframe:
>>> df
col1
0 _suffixHello
1 _suffixWorld
With str.replace
:
df['col1'] = df['col1'].str.replace(r'(_suffix)(.*)', r'', regex=True)
print(df)
# Output
col1
0 Hello_suffix
1 World_suffix
Or using str.slice
:
suffix = '_suffix'
df['col1'] = df['col1'].str.slice(len(suffix)) + suffix
# same as
# df['col1'].str[len(suffix):] + suffix
print(df)
# Output
col1
0 Hello_suffix
1 World_suffix
答案3
得分: 0
# 让我们首先创建一个包含8个随机选择的颜色的系列:
colors = np.array(['blue', 'brown', 'black', 'cyan', 'green', 'maroon', 'magenta', 'orange', 'pink', 'purple', 'red', 'teal', 'yellow'])
s = pd.Series(np.random.choice(a = colors, size = 8, replace = False))
# 将一个你喜欢的后缀字符串分配给变量 'suffix':
# 然后使用 apply 方法和一个 lambda 函数将你的后缀连接到系列中的每个元素上。确保你系列/列中的所有元素的数据类型都是字符串。如果它们是数字,先将它们转换为字符串,否则会因为数据类型不匹配而产生错误。
英文:
Let's first create a series to work with of 8 randomly chosen colors:
colors = np.array(['blue','brown', 'black', 'cyan', 'green', 'maroon', 'magenta', 'orange','pink', 'purple', 'red', 'teal','yellow' ])
s = pd.Series(np.random.choice(a = colors, size = 8, replace = False))
Assign a string that you'd like for your suffix to the variable, 'suffix':
Then use the apply method with a lambda function to concatenate your suffix to each element in the series. Make sure the dtypes of all your elements in your series/column are strings. If they're numbers, convert them to a str first, otherwise, you'll get an error because of mis-aligned dtypes.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论