java - 为什么 spark dataframe.take 会抛出异常不兼容的类型?
问题描述
我在Java中尝试过这个:
Dataset<Row> df1 = spark.read()
.format("avro")
.load("mysource_path");
Row[] rows = df1.selectExpr("sum(distance) as total").take(1);
编译器说:
error: incompatible types: Object cannot be converted to Row[]
Row[] rows = df1.selectExpr("sum(distance) as total").take(1);
解决方案
在 Java 中,尽管智能感知说它是 Row[],但 take 方法返回一个 Object。
为了解决我做了:
Row[] rows = (Row[])df1.selectExpr("sum(distancia) as total").take(1);
推荐阅读
- vue.js - Change vue router route without changing the URL
- flutter - 如何在 ListTitle 的前导参数中添加自定义图标
- python - Converting list items to string, question on syntax?
- python - 如何根据 Pandas 中第一个数据帧中的某些列值从第二个数据帧添加列值
- php - Laravel/ PHP- 404 路由返回不存在的页面
- python - IndexError: list index out of range coursera assignment
- javascript - 如何在不超时的情况下从javascript中的字符串中删除元音?
- c++ - 使用 C++ 和 i2c-tools 从虚拟 i2c 写入和读取
- android - 使用 Oreo 8.1 在 MIUI 中关闭应用程序时,作业计划停止
- javafx - JavaFX 路径:不需要的行