Я пытаюсь вывести csv из pyspark df и затем повторно вводить его, но когда я задаю схему, для столбца, являющегося массивом, он говорит, что некоторые строки False
.
Вот мой df
avg(rating) belongs_to_collection budget \
0 2.909946 False 5000000
1 3.291962 False 18000000
2 3.239811 False 8000000
3 3.573318 False 1500000
4 3.516590 False 40000000
genres original_language
0 ['Drama', 'Romance'] en
1 ['Comedy'] en
2 ['Drama', 'Family'] en
3 ['Crime', 'Drama', 'Mystery', 'Thriller'] en
4 ['Crime', 'Drama', 'Thriller'] en
Я впервые вывел на csv: df.drop('id').toPandas().to_csv('mergedDf.csv',index=False)
Я попытался прочитать, используя df = spark.read.csv('mergedDf.csv',schema=schema)
, но я получаю эту ошибку: 'CSV data source does not support array<string> data type.;'
Итак, я попытался прочитать из pandas и затем преобразовать в spark df, но он говорит мне, что столбец, содержащий список, имеет логическое значение.
df = pd.read_csv('mergedDf.csv')
df = spark.createDataFrame(df,schema=schema)
TypeError: field genres: ArrayType(StringType,true) can not accept object False in type <class 'bool'>
Однако, когда я проверяю, есть ли некоторыеиз строк == в False, я считаю, что ни один из них не является.
Я проверил: df[df['genres']=="False"]
и df[df['genres']==False]