Я пытаюсь записать json в фрейм данных, используя pyspark. json имеет десятичное значение, и в схеме я также определил это поле как DecimalType, но при создании фрейма данных возникает исключение искры, что TypeError: field pr: DecimalType (3,1) не может принять объект 20.0 в введите
r = {'name':'wellreading','pr':20.0}
distData = sc.parallelize([r])
schema = StructType([StructField('name',StringType(),True),StructField('pr',DecimalType(3,1),True)])
df = spark.createDataFrame(distData,schema)
df.collect()
здесь я привел пример кода, но я не могу понять, каким образом искра определяет, что 20.0 является плавающим и не может храниться в десятичном виде?