我是SparkR的新手,正在尝试数据准备的第一步。数据集属于此类。我试图子集并选择重要的列。我的问题是如何从数组元素中选择列。我正在尝试类似的操作,它允许我通过取消嵌套数据来选择列,但不能取消嵌套和展平数组以使其成为第一个元素。有用的Link
select.col <- SparkR::select(data,c("parsed.nid","parsed.status","parsed.sections.element[0].name"))
答案 0 :(得分:1)
我自己找到了解决此问题的方法,可以通过两个简单的步骤完成:-
摘要:
data.select <- SparkR::select(data,c("parsed.nid","parsed.status","parsed.sections"))
names(data.select) <- c("nid","status","sections")
categories <- SparkR::select(data.select,data.select$nid,data.select$status,explode(data.select$sections))
ws <- SparkR::orderBy(SparkR::windowPartitionBy("nid","status","sections"),"nid")
data.final <- SparkR::mutate(categories,row_num = over(row_number(), ws))
##If we want to get the first element of the array.
data.final <- data.final[data.final$row_num==1,]
请同时添加您的建议。