Если вам известен файл со строкой заголовка, вы можете сгенерировать схему, прочитав схему из файла заголовка, а затем использовать ту же схему для чтения всех других файлов.
df1 = spark.read.csv('a.csv', header=True)
header = spark.read.csv('a.csv', header=False).first()
df2 = spark.read.schema(df1.schema).csv(*.csv, header=False).filter(lambda line: line != header)
Код также удаляет строку заголовка из данных.Вы можете улучшить функцию фильтра, если можно использовать несколько полей, чтобы отличить заголовок от данных.