我想使用第二个数据帧(df2)中的映射替换一个数据帧(df1)中的列(Text)。 df1列为:
Text
0 yuwladu
1 jamiyEu
2 {lna~Asi
映射数据框:
Replace With
0 } ئ
1 u ُ
2 w و
3 l ل
4 a َ
5 d د
6 j ج
7 m م
8 y ي
9 E ع
10 { ٱ
11 n ن
12 ~ ّ
13 A ا
14 s س
15 i ِ
最终结果应该是:
Text
0 يُولَدُ
1 جَمِيعُ
2 ٱلنَّاسِ
由于文件大小(128,000行),因此希望快速转换。 昨天我花了一整天检查几乎所有类似的解决方案,但没有一个对我有用。
答案 0 :(得分:3)
创建一个str
转换表并将其应用于您的输入,例如:
trans = str.maketrans(df2.set_index('Replace')['With'].to_dict())
new_text = df1['Text'].str.translate(trans)
会给您new_text
的
0 يُولَدُ
1 جَمِيعُ
2 ٱلنَّاسِ