Мой список (кортежей) JSON значений выглядит следующим образом:
testJson = [('{"drivernumber":1, "speed" : ["30.5", "40", "50", "25.25"]}',),
('{"drivernumber":2, "speed" : ["25.25", "10.11", "11", "50"]}',),
('{"drivernumber":3, "speed" : ["40", "50", "80", "42"]}',)
]
Я создал следующую структуру данных:
from pyspark.sql.types import StructType, StructField, IntegerType, ArrayType, StringType
readSchema = StructType([
StructField("drivernumber", IntegerType(), True),
StructField("speed", StringType(FloatType(), True), True)])
Затем создал DataFrame:
df = (spark.read.schema(readSchema).json(sc.parallelize(testJson)))
display(df)
В конечном счете, мне нужно получить вывод ниже, но в данный момент мой DF (после шага выше) имеет только NULLS, и я не знаю почему. Любые предложения или советы будут высоко ценится. Спасибо:)
speed drivercount
50 3
40 2
25.25 2
11 1
.... ....