У меня есть следующие данные в виде .txt файла в формате табуляций , хранящиеся в моем хранилище BLOB-объектов. Я использую pyspark. sql для загрузки данных в блоки данных как pyspark. sql .df.
Это форма данных.
df = spark.createDataFrame(
[
(302, 'foo'), # values
(203, 'bar'),
(202, 'foo'),
(202, 'bar'),
(172, 'xxx'),
(172, 'yyy'),
],
['LU', 'Input'] # column labels
)
display(df)
Сначала я создал схему для данных перед загрузкой:
from pyspark.sql.types import *
data_schema = [
StructField('LU', StringType(), True),
StructField('Input', StringType(), True)]
mySchema = StructType(fields=data_schema)
Затем я использую следующий код для считывания данных:
df = spark.read.csv("/filepath/filename.txt", schema=mySchema , header=True)
df.show()
Однако, когда я смотрю на данные, первый столбец выглядит нормально, но значения второго столбца отображаются как ноль.
+----------+-----+
| LU|Input|
+----------+-----+
|302 | null|
|203 | null|
|202 | null|
|202 | null|
|172 | null|
|172 | null|
+----------+-----+
Кто-нибудь знает, почему переменная 'Input' отображается как ноль? Это просто фиктивные данные, при использовании реальных данных, имеющих более 30 переменных, загружаются только первые значения переменных, все остальное равно нулю.
Спасибо