【发布时间】:2017-12-19 14:49:07
【问题描述】:
我正在使用 spark 1.6 并且正在运行以下代码:
def load(self, filename):
print "Loading input file " + filename
inputpd = pd.read_csv('input/'+filename , dtype=str)
inputpd = inputpd.round(4)
inputpd = inputpd.drop(inputpd.columns[[0]], axis=1)
df_input = self.sqlContext.createDataFrame(inputpd)
return df_input
运行代码后出现类型错误:
Can not merge type <class \'pyspark.sql.types.DoubleType\'> and <class \'pyspark.sql.types.StringType\'>\n'
为了解决这个问题,我已经尝试过:
inputpd = (spark.read.format("csv").options(header="true").load('input/'+filename))
还有:
inputpd = sqlContext.read.format('com.databricks.spark.csv').options(header='true').load('input/'+filename)
但是两次我都得到错误 spark 或 sqlcontext not defined。请让我知道如何定义,因为我已经尝试过 import 语句。
【问题讨论】:
-
我已经解决了这个问题,但是现在我得到了错误:java.lang.ClassNotFoundException: Failed to find data source: com.databricks.spark.csv 如何使用 spark submit 命令解决这个问题?
标签: pandas pyspark databricks