我试图读取Parquet文件以保存模式,然后在读取csv文件时使用此模式将其分配给dataframe。
文件 fee.parquet
以及 loan__fee.csv
具有不同文件格式的相同内容。
下面是我的代码-我得到一个错误,模式应该是'structtype'。如何将从parquet文件读取的模式转换为structtype
from pyarrow.parquet import ParquetFile
import pyarrow.parquet
fee_schema = pyarrow.parquet.read_schema("/dbfs/FileStore/fee.parquet", memory_map=True)
df_mod = spark.read.csv('/FileStore/loan__fee.csv', header="true", schema=fee_schema)
它给出了错误:
typeerror:架构应为structtype或string
我尝试了一些选择,比如 fee_schema.to_string(show_schema_metadata = True)
但是它不起作用。
谢谢你的时间!
1条答案
按热度按时间9rygscc11#
正如mck所建议的,你可以使用
spark.read.parquet
为了获得模式-这个命令只是从文件中获取元数据,而不是完全读取它。所以你会得到这样的结果: