首页 > 解决方案 > 在 pyspark 中读取 Excel (.xlsx) 文件

问题描述

我正在尝试从 PySpark 中的本地路径读取 .xlsx 文件。

我写了下面的代码:

from pyspark.shell import sqlContext
from pyspark.sql import SparkSession

spark = SparkSession.builder \
      .master('local') \
      .appName('Planning') \
      .enableHiveSupport() \
      .config('spark.executor.memory', '2g') \
      .getOrCreate()

df = sqlContext.read("C:\P_DATA\tyco_93_A.xlsx").show()

错误:

TypeError:“DataFrameReader”对象不可调用

标签: apache-sparkpysparkspark-excel

解决方案


您可以使用 pandas 读取 .xlsx 文件,然后将其转换为 spark 数据帧。

from pyspark.sql import SparkSession
import pandas

spark = SparkSession.builder.appName("Test").getOrCreate()

pdf = pandas.read_excel('excelfile.xlsx', sheet_name='sheetname', inferSchema='true')
df = spark.createDataFrame(pdf)

df.show()

推荐阅读