1

我想用熊猫来代表我当地的一天。我在法国,所以有了这个 df=pd.DataFrame({'date':pd.date_range('2020-01-01','2020-01-05'),'value':[1,2,3,4,5]}) 和那个:df.date.dt.strftime('%a') 我想我会

0    Lun
1    Mar
2    Mer
3    Jeu
4    Ven

但它返回

0    Wed
1    Thu
2    Fri
3    Sat
4    Sun

我检查了我的语言环境(import locale locale.getlocale())结果是正确的('fr_FR','cp1252')。我该怎么办?

4

1 回答 1

2

当您运行locale.getlocale()它时,默认为“获取”类别 = 2 的语言环境(根据文档字符串),它LC_CTYPE适用于“字符的分类和转换”,而不是您需要的日期时间(在此处阅读有关不同语言环境类别的更多信息)。在您的情况下,您需要将特定的“TIME”语言环境设置为法语。尝试以下操作:

import locale

locale.setlocale(locale.LC_TIME, 'fr_FR')

df.date.dt.strftime('%a')

然后你会得到:

0    Mer
1    Jeu
2    Ven
3    Sam
4    Dim
于 2020-10-09T09:26:17.900 回答