为什么sparkR列上的countDistinct / n_distinct不起作用?

时间:2016-08-05 13:54:38

标签: r apache-spark count sparkr

我想计算一个SparkR列(SparkR数据帧)的不同元素:

df$col1
1
2
2
5
6
5

不同的元素:1,2,5,6

当我在SparkR专栏上尝试countDistinct时,我只得到这个结果:

> countDistinct(df$col1)
Column count(col1)

我必须使用agg功能吗?我试过但失败了,因为它似乎不适用于Columns。

2 个答案:

答案 0 :(得分:3)

这是预期的结果。 SparkR列不是数据容器。它只是执行计划中逻辑操作的表示。如果要获得结果,您可以在特定的上下文中对其进行评估:

.table-container

答案 1 :(得分:0)

  > df <- c(1,2,3,4,5,6,7,4,5,6)
   > df_uniq <- unique(df)
   > length(df_uniq)
    [1] 7

找出df

列中的唯一值
unique(df$col1)
length(unique(df$col1))

希望你能得到答案。