You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python将DataFrame中的英文记录移至另一列?

解决方法

1. 初始化数据与依赖

首先导入pandas并创建你提供的初始DataFrame:

import pandas as pd

# 构造初始数据
raw_data = {'COLUMN 1': ['هلا', 'السلام', 'WELCOMING', 'شي اخر']}
df = pd.DataFrame(raw_data)

2. 分离阿拉伯语与英文内容

通过正则表达式筛选出阿拉伯语和英文条目,同时将英文转为小写:

# 提取所有英文条目并转小写
english_items = df[df['COLUMN 1'].str.match(r'^[A-Za-z]+$')]['COLUMN 1'].str.lower().tolist()
# 提取所有阿拉伯语条目
arabic_items = df[df['COLUMN 1'].str.contains(r'[\u0600-\u06FF]')]['COLUMN 1'].tolist()

3. 构建目标DataFrame

如果英文条目数量少于阿拉伯语条目,用指定文本补全后合并成新的DataFrame:

# 补全英文条目,保证与阿拉伯语条目数量匹配
while len(english_items) < len(arabic_items):
    english_items.append('others eng. words')

# 生成最终结果
final_df = pd.DataFrame({
    'COLUMN 1': arabic_items,
    'COLUMN 2': english_items
})

最终结果

执行代码后得到的final_df如下:

COLUMN 1COLUMN 2
هلاwelcoming
السلامothers eng. words

内容的提问来源于stack exchange,提问作者Maha Mohammed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 14:30:53