我正在独自用数据块建造我的第一个三角洲湖房子。我需要读取 AWS 中存储桶中 csv 格式的文件,我可以通过执行 display(dbutils.fs.ls 来查看包含我的文件的文件夹。但是,在执行 readStream 时,它只读取单个文件,其中包含所有文件具有相同的名称,仅区分最后 4 位数字,即年份(2013、2014、2015)。
示例:data_from_2013.csv、data_from_2014.csv。
唯一读取的文件来自 2018 年,其结构与所有其他文件完全相同。 我相信这是我失败的事情,因为我需要在每个文件中插入年份的新列,并且唯一包含此数据的位置是每个文件的 B 列、第 1 行中的文件内。之后,我需要删除每个文件的前三行。
path_file = "/mnt/path/path_data/path_data_year/data_from_****.csv"
df_bronze_despesUF_funcao = spark.readStream \
.format("csv") \
.schema(schema) \
.options(header='true', inferSchema='true',
delimiter=';', encoding='iso-8859-1', skiprows=3) \
.load(path_file)
请问,有人可以帮助我吗?
我已阅读 Databricks 文档、观看视频,但无法完成此任务
用
_****.csv
代替path_file,只需将path_file声明为文件夹
path_file = "/mnt/path/path_data/path_data_year/"
df_bronze_despesUF_funcao = spark.readStream
.format("csv")
.schema(schema)
.options(header='true', inferSchema='true', delimiter=';', encoding='iso-8859-1', skiprows=3)
.load(path_file)