我想知道是否有任何方法可以在不使用 transform_df 或在代码存储库中转换的情况下导入文件。
基本上我想从数据集中提取数据并返回列表中的所有值。如果我使用 transform 或 transform_df 装饰器,那么在调用返回函数时我将无法访问该输入文件。
我想知道是否有任何方法可以在不使用 transform_df 或在代码存储库中转换的情况下导入文件。
基本上我想从数据集中提取数据并返回列表中的所有值。如果我使用 transform 或 transform_df 装饰器,那么在调用返回函数时我将无法访问该输入文件。
您是否尝试访问数据集中的原始文件?使用文件系统 API 可以做到这一点。在您的堆栈文档中搜索“原始文件访问”,您可以在其中找到示例 python 代码。你仍然使用@transform装饰器,除了不叫.dataframe()你 call .filesystem()。这是一些示例代码。
import csv
with hair_eye_color.filesystem().open('students.csv') as f:
reader = csv.reader(f, delimiter=',')
next(reader)
next(reader)
# ['id', 'hair', 'eye', 'sex']
# ['1', 'brown', 'brown', 'M']
您可以使用文件数据创建 Spark 数据帧并将其写入输出。