问题描述
我想从我的上游数据集中读取列描述和类型类,然后我想简单地将它们传递给我的下游数据集。
如何在 Python 转换中执行此操作?
解决方法
如果您将存储库升级到至少 1.206.0,您将能够访问 Transforms Python API 中的一项新功能:读取和描述和 > 类型类。对于可见性,这个问题也与this one
高度相关column_descriptions
属性返回结构化的 Dict<str,List<Dict<str,str>>>
,例如 tags
列将具有 {'tags': [{"name": "my_name","kind": "my_kind"}]}
的 column_typeclasses 对象。类型类总是由两个组件组成,一个 name
和一个 kind
,它出现在上面显示的列表的每个字典中。这个dict中只能传入两个key,每个key对应的值必须是str。
此功能的完整文档正在编写中,敬请期待。
from transforms.api import transform,Input,Output
@transform(
my_output=Output("ri.foundry.main.dataset.my-output-dataset"),my_input=Input("ri.foundry.main.dataset.my-input-dataset"),)
def my_compute_function(my_input,my_output):
recent = my_input.dataframe().limit(10)
existing_typeclasses = my_input.column_typeclasses
existing_descriptions = my_input.column_descriptions
my_output.write_dataframe(
recent,column_descriptions=existing_descriptions,column_typeclasses=existing_typeclasses
)