我有一个Dataframe,我从CSV文件中读取了很多列,如:timestamp,steps,heartrate等.
我想总结每列的值,例如"steps"列上的步骤总数.
据我所知,我想使用这些函数:http: //spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.sql.functions$
但我可以理解如何使用函数sum.
当我写下面的内容时:
val df = CSV.load(args(0))
val sumSteps = df.sum("steps")
Run Code Online (Sandbox Code Playgroud)
功能总和无法解决.
我是否错误地使用了函数sum?是否需要先使用功能图?如果是的话怎么样?
一个简单的例子非常有用!我最近开始写Scala.
我有以下问题:
我的程序中有一个变量值,声明为Any值.
我想将此值转换为字节数组..
如何序列化为字节数组并返回?我找到了与其他类型相关的示例,如Double或Int,但不是Any.
我在 Grails 上的 Groovy 中名为 OrderService 的服务类中有以下代码段。我想为这个类做一个单元测试。User 和 Order 是域分类的。一个用户有很多订单。
boolean testfun(long userId, lond orderId){
User user = User.findByUserId(userId)
if(user == null)return false
Order order = Order.findByUserAndId(user, orderId)
if(order == null)return false
return true
}
Run Code Online (Sandbox Code Playgroud)
我尝试编写的单元测试如下(使用 Spock):
@TestFor(OrderService)
@Mock([User, Order])
class OrderServiceSpec extends Specification{
def "test funtest"() {
User user = new User(2)
Order order = new Order()
order.metaClass.id = 3// I want to assign the id of the order in domain
order.save()
user.addToOrders(order)
user.save()
expect:
service.testfun(2,3) == true
} …Run Code Online (Sandbox Code Playgroud) 我有一个 CSV 文件,正在处理其数据。
我正在使用数据框,并根据某些条件计算每列的平均值、最小值、最大值、平均值、总和。每列的数据可以为空或为 null。
我注意到在某些情况下我得到了最大值,或者求和了一个空值而不是一个数字。或者我在 max() 中得到的数字小于 min() 返回的输出。
我不想用其他值替换 null/空值。我所做的唯一一件事就是在 CSV 中使用这两个选项:
.option("nullValue", "null")
.option("treatEmptyValuesAsNulls", "true")
Run Code Online (Sandbox Code Playgroud)
有什么办法可以处理这个问题吗?大家以前都遇到过这个问题吗?是数据类型的问题吗?
我运行这样的东西:
data.agg(mean("col_name"), stddev("col_name"),count("col_name"),
min("col_name"), max("col_name"))
Run Code Online (Sandbox Code Playgroud)
否则我可以认为这是我的代码中的问题。