我想对我的数据应用回归。其中一个工作流是将我的数据准备为JavaRDD,从数据集及其标头开始。因此,我做了以下工作:
==第1步:将数据集转换为JavaRDD
JavaRDD<Row> dataPointsWithHeader =modelDS.toJavaRDD();==第2步:取第一行(我认为它是标题)
Row header= dataPointsWithHeader.first();==第3步:通过以下方式消除行标题
JavaRDD<Row> dataPointsWithoutHeader = dataPointsWithHeader.filter((Row row) -> {
return !row.equals(header);
});上述方法的问题是:
a)步骤2的结果不是标题行;
b)在存在访问报头的方法的情况下,步骤3的应用是非常低效的。
我的问题是:
有没有一种有效的方法来访问报头并消除它?
非常感谢您的帮助和建议。
致敬,卡洛
发布于 2016-10-31 00:28:53
这应该是非常简单的。
如果你需要为给定的数据集设置头部,当你可以在构建函数中使用的时候。
String[] header = modelDS.columns();您可以通过在modelDS变量本身之上进行操作来直接操作所有操作。
https://stackoverflow.com/questions/38749438
复制相似问题