Предполагается, что в рабочем каталоге размещены следующие данные:
>library(sparklyr)
>library(dplyr)
>f<-data.frame(category=c("e","EE","W","S","Q","e","Q","S"),
DD=c(33.2,33.2,14.55,12,13.4,45,7,3),
CC=c(2,44,4,44,9,2,2.2,4),
>FF=c("A","A","A","A","A","A","B","A") )
>write.csv(f,"D.csv")##Write in working directory
Мы используем команды spark для чтения файла из рабочего каталога
>sc <- spark_connect(master = "local", spark_home = "/home/tomas/spark-2.1.0-bin-hadoop2.7/", version = "2.1.0")
>df <- spark_read_csv(sc, name = "data", path = "D.csv", header = TRUE, delimiter = ",")
Я хочу получить матрицу, подобную следующей, в которой сгруппированы по «категории», сумма DD, рассчитать среднее значение «CC», считать по-разному в «FF»
Было бы так:
category SumDD MeanCC CountDistinctFF
e 78.2 2 1
EE 33.2 44. 1
WW 14.55 4 1
S 15 24 2
Q 20.4 5.6 1