我尝试了一个简单的例子:
data = sqlContext.read.format("csv").option("header", "true").option("inferSchema", "true").load("/databricks-datasets/samples/population-vs-price/data_geo.csv")
data.cache() # Cache data for faster reuse
data = data.dropna() # drop rows with missing values
data = data.select("2014 Population estimate", "2015 median sales price").map(lambda r: LabeledPoint(r[1], [r[0]])).toDF()
Run Code Online (Sandbox Code Playgroud)
它运作良好,但当我尝试非常相似的东西时:
data = sqlContext.read.format("csv").option("header", "true").option("inferSchema", "true").load('/mnt/%s/OnlineNewsTrainingAndValidation.csv' % MOUNT_NAME)
data.cache() # Cache data for faster reuse
data = data.dropna() # drop rows with missing values
data = data.select("timedelta", "shares").map(lambda r: LabeledPoint(r[1], [r[0]])).toDF()
display(data)
Run Code Online (Sandbox Code Playgroud)
它引发错误:AnalysisException:u"无法解析'timedelta'给定的输入列:[data_channel_is_tech,...
我当然导入了LabeledPoint和LinearRegression
可能有什么不对?
即使是更简单的情况
df_cleaned = df_cleaned.select("shares")
Run Code Online (Sandbox Code Playgroud)
引发相同的AnalysisException(错误).
*请注意:df_cleaned.printSchema()效果很好.
我有一个字符串 RDD(全部小写),我想使用正则表达式来匹配或查找以“can”开头的所有单词。我怎样才能在Python中做到这一点?
作为输入的示例
rdd = sc.parallelize(['canada','canpar','beauty','can'])
Run Code Online (Sandbox Code Playgroud)
我想要一个像这样的输出
['canada','canpar','can']
Run Code Online (Sandbox Code Playgroud)
这是一个 RDD。
如果我有,a=[2 5 7 1 7]那么MATLAB有一种方法可以返回向量中两个7的索引吗?我的意思是我要寻找返回的命令max=7和idx=[3 5].