从sparkR中的DataFrame附加一个元素

时间:2015-08-28 13:01:15

标签: r sparkr

我在sparkR中有一个名为'data'的DataFrame。 '数据'包含'user','amount_spent'和'amount_won'。 我想为用户1计算balance = amount_spent - amount_won。

y <- filter(data, data$user==1)

现在我计算总和

yn <- agg(groupBy(y, "user"), amount_spent="sum", amount_won="sum")

现在我计算用户1的余额

ynn <- withColumn(yn, "balance", yn[[3]] - yn[[2]])

这一切都给了我一个正确的结果,但是我想附加“balance”并将它作为一个整数来自'ynn',这是一个DataFrame。我怎样才能做到这一点?如果我想为100个用户做这个,我需要做100次相同的事情。

1 个答案:

答案 0 :(得分:1)

我可能会遗漏一些东西,但为什么不这样做:

var searchedObject = obj.filter(function(el) {
    return el.property == "1"
})[0]; // [0] to get the 1st element.

现在计算余额时,每个用户都有

## The data set is now `data` not yn
yn = agg(groupBy(data, "user"), amount_spent="sum", amount_won="sum")