首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dataset<Row>和JavaRDD<Row>:如何消除报头

Dataset<Row>和JavaRDD<Row>:如何消除报头
EN

Stack Overflow用户
提问于 2016-08-04 00:49:50
回答 1查看 714关注 0票数 1

我想对我的数据应用回归。其中一个工作流是将我的数据准备为JavaRDD,从数据集及其标头开始。因此,我做了以下工作:

==第1步:将数据集转换为JavaRDD

代码语言:javascript
复制
    JavaRDD<Row> dataPointsWithHeader =modelDS.toJavaRDD();

==第2步:取第一行(我认为它是标题)

代码语言:javascript
复制
Row header= dataPointsWithHeader.first();

==第3步:通过以下方式消除行标题

代码语言:javascript
复制
JavaRDD<Row> dataPointsWithoutHeader = dataPointsWithHeader.filter((Row row) -> {
            return !row.equals(header);
        });

上述方法的问题是:

a)步骤2的结果不是标题行;

b)在存在访问报头的方法的情况下,步骤3的应用是非常低效的。

我的问题是:

有没有一种有效的方法来访问报头并消除它?

非常感谢您的帮助和建议。

致敬,卡洛

EN

回答 1

Stack Overflow用户

发布于 2016-10-31 00:28:53

这应该是非常简单的。

如果你需要为给定的数据集设置头部,当你可以在构建函数中使用的时候。

代码语言:javascript
复制
String[] header = modelDS.columns();

您可以通过在modelDS变量本身之上进行操作来直接操作所有操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38749438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档