您需要确保您的pandas dataframe列适合spark推断的类型。如果您的熊猫数据框列出类似以下内容:
pd.info()<class 'pandas.core.frame.Dataframe'>RangeIndex: 5062 entries, 0 to 5061Data columns (total 51 columns):SomeCol 5062 non-null objectCol2 5062 non-null object
而且您遇到该错误,请尝试:
df[['SomeCol', 'Col2']] = df[['SomeCol', 'Col2']].astype(str)
现在,确保
.astype(str)实际上是您希望这些列成为的类型。基本上,当底层Java代码尝试从python中的对象推断类型时,它会使用一些观察值并做出猜测,如果该猜测并不适用于试图将熊猫转换为列的所有数据,火花会失败。



