使用列表迭代和更新列

问题描述 投票:0回答:1
 originallist = df['Customer'].tolist()

我有一份客户名单。在这些客户中,我有一些翻译工作要做,我已经完成了。换句话说,我遍历大约 4000 个客户的原始列表,找到大约 1500 个需要翻译的条目,它们可以位于原始列表/列中的任何位置。我现在需要用更新后的翻译客户替换/映射/更新条目。

 translated_customer = (translator.translate(customer).text)

我该怎么办? 如果是一个条目,一切都很好,但因为我有一个列表,它更复杂

python dataframe list dictionary replace
1个回答
0
投票

您可以通过将翻译后的客户映射或更新回其在数据框中的原始位置来实现此目的。要处理客户条目列表的此问题,您可以创建一个字典,将原始客户名称映射到其翻译值,然后使用该字典更新数据框。

第1步:创建一个空字典来存储翻译。 第 2 步:迭代原始客户列表。

  • 检查客户是否需要翻译。
  • 翻译客户并将其存储在字典中。 步骤 3:使用字典通过将值映射回来来替换 DataFrame 中的原始条目。

我会给你完整的代码。

# Step 1: Create a dictionary to store translations
translations = {}

# Step 2: Iterate over the original customer list and translate customers
for customer in df['customer']
  if customer_needs_translation(customer): # This is the condition to check if the customer needs translation
      translated_customer = trnaslator.trnaslate(customer).text
      translations[customer] = trnaslated_customer

# Step 3: Use the dictionary to map and replace the translated customers
df['Customer'] = df['Customer'].map(lambda x: translations.get(x,y))
© www.soinside.com 2019 - 2024. All rights reserved.