2017-07-03 67 views
2

我在我的pandas数据框中指定了1到12的数字。通过使用calendar.month_abbr我把它们转换成词如下:设置飞蛾缩写语言

df['Month'] = df['Month'].apply(lambda x: calendar.month_abbr[x]) 

默认情况下它是英语。

是否可以指定一种语言?

+0

是的,但是您需要首先更改语言环境,按照文档:“一个数组代表当前语言环境*中的缩写月份*”https://docs.python.org/2/library/ calendar.html#calendar.month_abbr – DeepSpace

回答

4

演示: “是否可以指定语言”

In [29]: df 
Out[29]: 
    Month 
0  1 
1  2 
2  3 
3  4 
4  5 
5  6 
6  7 
7  8 
8  9 
9  10 
10  11 
11  12 


In [30]: import locale 

In [31]: locale.setlocale(locale.LC_ALL, 'de') 
Out[31]: 'de' 

In [32]: import calendar 

In [33]: df['de'] = df['Month'].apply(lambda x: calendar.month_abbr[x]) 

In [34]: df 
Out[34]: 
    Month de 
0  1 Jan 
1  2 Feb 
2  3 Mrz 
3  4 Apr 
4  5 Mai 
5  6 Jun 
6  7 Jul 
7  8 Aug 
8  9 Sep 
9  10 Okt 
10  11 Nov 
11  12 Dez 
+1

我想知道为什么''de''是第一个想到的例子( - ; – piRSquared

+0

我得到一个错误'错误:不支持的语言环境设置' – Dinosaurius

+1

最后,这适用于我'语言环境。 setlocale(locale.LC_TIME,'en_DK.UTF-8')' – Dinosaurius