如何在 pyspark - dataframe 中将月份名称更改为不同的语言

2024-03-20

我正在尝试使用以下配置在 Databricks 上创建“日期”表:

# Get date range
dateFrom = dbutils.widgets.get("date_from")
dateTo = dbutils.widgets.get("date_to")

dateDF_TESTE = spark.sql("SELECT sequence(to_date('{0}'), to_date('{1}'), interval 1 day) AS date".format(dateFrom, dateTo))\
               .select(F.explode("date").alias('DSC_DATE'))'''

但是,当我添加包含这些数据的列时,我只能获取英文信息,例如月份名称或星期几。

我打算将此信息更改为另一种语言(葡萄牙语),但没有成功。我尝试过使用语言环境,但它不起作用。

import locale
# use user's default settings
locale.setlocale(locale.LC_ALL, 'pt_PT.utf8')

从 Spark 3.0 开始,可以使用to_csv() https://spark.apache.org/docs/latest/api/python/reference/api/pyspark.sql.functions.to_csv.html在单个列上。to_csv接受与标准 csv writer 相同的参数,因此可以在此处设置区域设置:

from pyspark.sql import functions as F

dateDF_TESTE.withColumn("formatted_date",
    F.to_csv(F.struct(F.col("DSC_DATE")),
        {"dateFormat": "EEEE, d 'de' MMMM 'de' yyyy", "locale": "pt", "quote":""}))\
    .show(truncate=False, n=5)

prints

+----------+------------------------------------+
|DSC_DATE  |formatted_date                      |
+----------+------------------------------------+
|2020-01-01|Quarta-feira, 1 de Janeiro de 2020|
|2020-01-02|Quinta-feira, 2 de Janeiro de 2020|
|2020-01-03|Sexta-feira, 3 de Janeiro de 2020 |
|2020-01-04|Sábado, 4 de Janeiro de 2020      |
|2020-01-05|Domingo, 5 de Janeiro de 2020     |
+----------+------------------------------------+
only showing top 5 rows
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 pyspark - dataframe 中将月份名称更改为不同的语言 的相关文章

随机推荐

  • pip install enum 无法正常工作,显示“intflag”的错误没有

    pip 安装枚举 不工作显示错误 AttributeError 模块 enum 没有属性 IntFlag enum34 is the stdlib Enum backport but it only supports features fo
  • 在 python 中并行化这个嵌套 for 循环

    我再次努力提高这段代码的执行时间 由于计算确实非常耗时 我认为最好的解决方案是并行化代码 我首先使用地图 如中所述this https stackoverflow com questions 29217088 parallelize a n
  • 从 DOM 中删除空节点元素

    在没有 jQuery 的情况下从 dom 中识别和删除空元素的最佳方法是什么 如果我有如下所示的代码 div div p p div div p Some content p div div 摆脱空虚的最好方法是什么 p and p div
  • 在 C++ 中清除内存中的回车符

    我有以下代码 int main Variables char name Take the users name as input cout lt lt Please enter you name lt lt endl cin gt gt n
  • 模拟詹金斯管道步骤

    我在 jenkinsfile 中使用了一个类 这里 是它的简化版本 class TestBuild def build jenkins jenkins script jenkins sh returnStdout true script e
  • 渐进式 Web 应用程序的预期启动体验是什么?

    测试渐进式 Web 应用程序 当我在飞行模式下启动应用程序时 我得到了意外的启动 启动体验 Android Chrome 从主屏幕体验启动 我看到一个白色的屏幕 然后是 离线恐龙 的短暂闪烁 然后应用程序成功启动 一切正常 启动时间比我预期
  • 如何自定义ARC-Welder的屏幕尺寸?

    我想将 ARC Welder chrome extension 的屏幕尺寸更改为 7 英寸屏幕 显示在我的电脑上 以在不同的屏幕尺寸上测试应用程序 这可以使用例如元数据输入来完成吗 类似于我最近问的问题 但我认为答案相同 似乎在外形规格方面
  • 如何正确处理Python中的可选功能

    我正在开发实现科学模型的 python 包 我想知道处理可选功能的最佳方法是什么 这是我想要的行为 如果无法导入某些可选依赖项 例如 在无头机器上绘制模块 我想在我的类中禁用使用这些模块的功能 警告用户如果他尝试使用它们以及所有这些 而不会
  • 如何在 Django 模型中轻松地将记录标记为已删除,而不是实际删除它们?

    我不想删除 Django 应用程序中的记录 而是只想将它们标记为 已删除 并将它们隐藏在我的活动查询中 我这样做的主要原因是为用户提供取消删除选项 以防他们意外删除记录 某些后端审计跟踪也可能需要这些记录 有很多外键关系 因此当我将记录标记
  • r facet_wrap 未与 geom_point 正确分组

    我正在与 R 中的facet wrap 作斗争 它应该很简单 但是facet 变量没有被拾取 这是我正在运行的 plot ggplot data item household descr count mapping aes x item h
  • 如何在 XSL 中“重用”代码

    我正在使用 XSLT 节点 我的问题是关于 XSL 的 我在互联网上进行了搜索 但我只找到了有关 XML 处理的信息以将其显示在网页上 我正在搜索的信息是如何在这种情况下 重用 某些代码 我的 XSL 是
  • jQuery colorbox onclose 更新父级

    可以为你们提供一些帮助 所以我使用 jQuery colorbox 并通过单击链接激活它 在颜色框中有一个带有一些复选框的表单 我想做的是在单击提交时将所选复选框的所有值获取到父级 并随后关闭颜色框 我不想刷新父窗口 它应该自动用内容填充
  • 警告:mysqli_connect():(HY000/1045):用户“用户名”@“localhost”的访问被拒绝(使用密码:YES)

    警告 mysqli connect HY000 1045 第 6 行 C Users xampp htdocs PHP Login Script config php 中的用户 用户名 localhost 使用密码 YES 访问被拒绝 即使
  • 名称 虚伪列表

    有人知道虚伪姓名的公开列表吗 名字的缩写形式 例如安东尼的托尼 罗斯玛丽的罗西或维多利亚的维姬 有一个 perl 模块可以在这里做到这一点 http metacpan org pod Lingua EN 昵称 http metacpan o
  • SVG 圆起点

    如何更改 svg 圆的起始点 使其从 0 点钟开始逐渐动画化 默认圆形 svg 从 3 点钟开始 我当前的圈子 悬停动画 timeline position fixed width 500px height 500px top 50 lef
  • Java Pair 类实现[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有经过验证的 Java Pair 类实现 我的意思是随时可用 被广泛接受和测试 可能是 Apache
  • jQuery Highcharts:使用下拉列表更改图表类型

    我正在尝试更改图表的值 如下所示
  • Git 推送不起作用错误“您必须使用个人访问令牌或 SSH 密钥”

    Git 抛出错误 C Program Files x86 Git bin git exe push u recurse submodules check progress origin refs heads dev civaplugin r
  • Android Holo 主题不包含多行微调器下拉项[重复]

    这个问题在这里已经有答案了 我最近刚刚在我的 Android 应用程序中实现了全息主题 执行此操作后 我拥有的任何下拉项长为多行的微调器都不会将文本换行为多行 每个下拉项目都保留在一行上并被截断为一定的长度 这是我的微调器下拉资源的 xml
  • 如何在 pyspark - dataframe 中将月份名称更改为不同的语言

    我正在尝试使用以下配置在 Databricks 上创建 日期 表 Get date range dateFrom dbutils widgets get date from dateTo dbutils widgets get date t