Ошибка Pyspark DataframeType a: DoubleType не может принять объект «a» типа <класс «str»>Python

Программы на Python
Ответить
Anonymous
 Ошибка Pyspark DataframeType a: DoubleType не может принять объект «a» типа <класс «str»>

Сообщение Anonymous »

У меня есть эта функция
customSchema = StructType([ \
StructField("a", Doubletype(), True), \
StructField("b", Doubletype(), True),
StructField("c", Doubletype(), True),
StructField("d", Doubletype(), True)])

n_1= sc.textFile("/path/*.txt")\
.mapPartitions(lambda partition: csv.reader([line.replace('\0','') for line in partition],delimiter=';', quotechar='"')).filter(lambda line: len(line) > 1 )\
.toDF(customSchema)


который создаст Dataframe, проблема в том, что .mapPartitions будет использовать в качестве типа по умолчанию , и мне нужно привести его к DoubleType, прежде чем преобразовать его в Dataframe. Есть идеи?
Пример данных
[['0,01', '344,01', '0,00', '0,00']]

или просто работайте с
n_1= sc.textFile("/path/*.txt")\
.mapPartitions(lambda partition: csv.reader([line.replace('\0','') for line in partition],delimiter=';', quotechar='"')).filter(lambda line: len(line) > 1 )\



Подробнее здесь: https://stackoverflow.com/questions/628 ... n-type-cla
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»