pyspark - 尝试写入增量 table 时出现错误 'list' 对象没有属性 'write'

pyspark - getting error 'list' object has no attribute 'write' when attempting to write to a delta table

我正在尝试将 delta table 的前 X 行读入数据帧,然后将其写回(覆盖)到 delta table。这是代码:

# read from entire delta table into dataframe
revEnrichRef = spark.read.format("delta").load("/mnt/tables/myTable")

# retrieve first 5 rows
dfSubset = revEnrichRef.head(5)
dfSubset.write.format("delta").mode("overwrite").save("/mnt/tables/myTable")

此时我得到错误:'list' object has no attribute 'write'

我想这意味着头 return 列表而不是新的日期框架。我真正想要的是一个将 return x 行添加到数据框的解决方案。或者,有一种方法可以在没有中间数据帧的情况下做到这一点也一样好。任何帮助表示赞赏。谢谢

您可以使用 limit 方法。此 returns 一个数据框限制为作为参数传递的行数。

dfSubset = revEnrichRef.limit(5)

head 方法是一个操作,它将从您的数据框中收集 5 行作为列表。 (如果 n = 1,则为单个 Row 对象)