gpt4 book ai didi

python - 如果它包含 pandas 数据框中的子字符串,则替换整个字符串

转载 作者:行者123 更新时间:2023-11-30 22:20:37 25 4
gpt4 key购买 nike

我有一个示例数据集。

raw_data = {
'categories': ['sweet beverage', 'salty snacks', 'beverage,sweet', 'fruit juice,beverage,', 'salty crackers'],
'product_name': ['coca-cola', 'salted pistachios', 'fruit juice', 'lemon tea', 'roasted peanuts']}
df_a = pd.DataFrame(raw_data)

我需要遍历“类别”列中的行,并检查它是否包含特定字符串(在本例中为“饮料”),之后我将类别更新为“饮料”。这个链接是我在 stackoverflow 上找到的最接近的链接,但没有告诉我如何浏览整个数据集。

Replace whole string if it contains substring in pandas

这是我的示例代码。

for index,row in df.iterrows():
if row.str.contains('beverage', na=False):
df.loc[index,'categories_en'] = 'Beverages'
elif row.str.contains('salty',na=False):
df.loc[index,'categories_en'] = 'Salty Snack'
....<and other conditions>

我怎样才能实现这个目标?谢谢大家!

最佳答案

创建以下字典,然后使用replace

Yourdict2={1:'Beverages',2:'salty'}
Yourdict1={'beverage':1,'salty':2}
df_a.categories.replace(Yourdict1,regex=True).map(Yourdict2)
Out[275]:
0 Beverages
1 salty
2 Beverages
3 Beverages
4 salty
Name: categories, dtype: object

关于python - 如果它包含 pandas 数据框中的子字符串,则替换整个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48796604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com