当前位置: 首页 > 知识库问答 >
问题:

无法将pyspark数据帧加载到决策树算法。它说不能使用pyspark数据帧

糜凯泽
2023-03-14

我在IBM的数据平台上工作。我能够将数据加载到pyspark数据框架中,并创建了一个spark SQL表。分割数据集后,将其输入分类算法。它会出现诸如spark SQL数据无法加载之类的错误。规定的日期。

from sklearn.ensemble import RandomForestRegressor`
from sklearn.model_selection import train_test_split`
from sklearn import preprocessing`
import numpy as np`

X_train,y_train,X_test,y_test = train_test_split(x,y,test_size = 0.1,random_state = 42)
RM = RandomForestRegressor()
RM.fit(X_train.reshape(1,-1),y_train)`

错误:

TypeError:预期的序列或类似数组,已获取{

在这个错误之后,我做了这样的事情:

x = spark.sql('select Id,YearBuilt,MoSold,YrSold,Fireplaces FROM Train').toPandas()
y = spark.sql('Select SalePrice FROM Train where SalePrice is not null').toPandas()

错误:

属性错误回溯(最近一次调用最后一次)在()5 X_序列,y_序列,X_测试,y_测试=序列测试分割(X,y,测试大小=0.1,随机状态=42)6 RM=随机森林回归器()----

共有1个答案

毕泽宇
2023-03-14

正如skLearning留档所说:

"""
    X : array-like or sparse matrix, shape = [n_samples, n_features]
"""
regr = RandomForestRegressor()
regr.fit(X, y)

首先你要给X参数一个pandas。数据帧而不是数组

其次,整形()方法不是DataFrame对象的属性,而是numpy数组

import numpy as np
x = np.array([[2,3,4], [5,6,7]]) 
np.reshape(x, (3, -1))

希望这有帮助。

 类似资料:
  • 我想使用PySpark创建spark数据帧,为此我在PyCharm中运行了以下代码: 但是,它会返回此错误: 使用 Spark 的默认 log4j 配置文件:组织/缓存/火花/log4j-defaults.属性 将默认日志级别设置为“WARN”。要调整日志记录级别,请使用 sc.setLogLevel(新级别)。对于 SparkR,请使用 setLogLevel(新级别)。18/01/08 10:

  • 我试图使用pyspark将每日批次的数据发送到Kafka主题,但我当前收到以下错误: Traceback(最近的最后一次调用): File", line 5, in File"/usr/local/rms/lib/hdp26_c5000/park2/python/pyspark/sql/readwriter.py", line 548, in保存自己。_jwrite.save()File"/usr

  • 无法通过jupyter笔记本使用pyspark将数据写入hive。 给我下面的错误 Py4JJavaError:调用o99.saveAsTable时发生错误。:org.apache.spark.sql.分析异常:java.lang.运行时异常:java.lang.运行时异常:无法实例化org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreCl

  • 我有一个PySpark数据帧,df1,看起来像: 我有第二个PySpark数据帧,df2 我想将df1的所有列(我有两列以上)与客户ID上的df2连接值相乘

  • 假设我有两个数据帧,具有不同级别的信息,如下所示: 我想加入df1和df2,并将“值”信息传递给df2:一天中的每一小时都将获得“日”值。 预期产出:

  • 我是pyspark的新手,我来尝试做一些像下面这样的事情,为每个cookie调用一个函数Print细节,然后将结果写入文件。spark.sql查询返回正确的数据,我也可以将其序列化为文件。有人可以帮助每个cookie上的for语句。调用UDF的语法应该是什么,如何将输出写入文本文件? 任何帮助是值得赞赏的。谢谢