我正在尝试将微笑集成到我的 scala 代码库中。特别是,我想训练一个随机森林分类器。在FAQ中是这样写的:
大多数 Smile 算法都将简单的 double[] 作为输入。因此,只要样本在双数组中,您就可以使用您喜欢的方法或库来导入数据。
但 RandomForest 似乎并非如此,所有拟合方法似乎都以公式和数据框作为输入。就我而言,我有两个 Array[Array[Double]] 包含两个不同类的示例:例如,第一个应标记为 0,第二个应标记为 1。第一个数组具有形状 (n_samples_0, n_features) 和第二个 (n_samples_1, n_features)
据我所知,在此数据上训练微笑 randomForest 的唯一方法是首先将这两个数组转换为一个微笑数据帧,其中包含 n_features + 1 列(每个特征一个 + 标签一个)和 n_samples_0 + n_samples_1 行. 接着:
val formula: Formula = "class" ~
val rf = randomForest(formula, df)
因此我的问题是:有没有办法从 Scala API 中的数组创建数据框?我只能通过读取不同的文件格式来找到创建 Dataframe 的方法。