如何在python中将语言ISO639-1代码转换为语言名称?

问题描述

我有以下 Pandas 系列:

>>> df.original_language.value_counts()
en    32269
fr     2438
it     1529
ja     1350
de     1080
      ...  
la        1
jv        1
sm        1
gl        1
mt        1
Name: original_language,Length: 92,dtype: int64
4

我想把这些语言代码转换成它们原来的名字,比如

zh >> 英语

ar >> 阿拉伯语

我查了一下this question,但没有帮助。 如果需要任何软件包,请尽可能提供如何使用 pip 安装它们的来源。

解决方法

使用iso-639模块->

#pip install iso-639
from iso639 import languages
df['lang'] = df['lang'].apply(lambda x: languages.get(alpha2=x).name)

output -

       lang  count
0   English  32269
1    French   2438
2   Italian   1529
3  Japanese   1350
4    German   1080
5     Latin      1
6  Javanese      1
7    Samoan      1
8  Galician      1
9   Maltese      1

如果您想在原始 df 中转换代码,请使用 -

from iso639 import languages
df['original_language'] = df['original_language'].apply(lambda x: languages.get(alpha2=x).name)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...