我只是想使用日期作为笔记本的输入,并想使用小部件管理参数处理。databricks 小部件的标准文档 ( https://docs.databricks.com/user-guide/notebooks/widgets.html ) 不提供有关日历小部件的信息或创建新小部件类型的可能性。
他们只提供
现在我为日、月和年创建不同的下拉小部件,但在我看来这不是一个好的解决方案。
有人在数据块中创建/修改小部件方面有过任何经验吗?
虽然您无法创建自定义小部件,但您可以使用文本小部件传递标准日期格式,例如yyyy-mm-dd然后转换为日期时间/时间戳。
import pandas as pd
# create the date widget
dbutils.widgets.text(name="date", defaultValue="2022-01-01")
# get the value of date widget
date = dbutils.widgets.get("date")
# convert to timestamp with a forced format
pd.to_datetime(date, format="%Y-%m-%d")
Run Code Online (Sandbox Code Playgroud)
如果您不需要参数化笔记本,则可以在 Databricks 中使用ipywidgets(目前截至 2022 年 8 月处于公共预览版)。需要 Databricks 运行时 11.0 或更高版本。
import ipywidgets as widgets
# create widget
date_widget = widgets.DatePicker(
description='Pick a Date',
disabled=False
)
# display widget
date_widget
# get widget value
date_widget.value
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2769 次 |
| 最近记录: |