2017-01-19 4 views
1

나머지 열을 기반으로 한 열을 집계하는 데이터 프레임이 있습니다. groupBy의 나머지 열을 쉼표로 구분하여 약 30 개의 열로 나누고 싶지 않습니다. 누군가가 나를 더 가독성있게 보이게 할 수있는 방법을 말해 줄 수 있습니까?spark dataframe - GroupBy aggregation

지금 df.groupBy ("c1", "c2", "c3", "c4", "c5", "c6", "c7", "c8", "c9" "C10", ....). AGG (C11) 내가 더 좋은 방법이 있는지 알고 싶어

..

감사합니다, 존 열을 지정

답변

1

은에 깨끗한 방법입니다 그것을해라. 그러나 나는 당신이 꽤 많은 옵션을 가지고 있다고 믿는다.

그들 중 하나는 Spark SQL에 가서 프로그래밍 방식으로 문자열을 작성하는 쿼리를 작성하는 것입니다.

또 다른 옵션은 다음과 같이 열 이름 목록에서 가변 인자 : _*을 사용할 수 : 답장을

val cols = ... 
df.groupBy(cols : _*).agg(...) 
+0

감사합니다. 어떻게 내 칼이 어떻게 생겼는지 말해 줄래?. 문자열 배열을 사용했는데 작동하지 않습니다. – John

+0

이 답변은 올바르게 설명합니다 : http://stackoverflow.com/questions/37524510/spark-dataframe-groupby-with-sequence-as-keys-arguments – Chobeat

+0

정확히 내가 찾고있는 것이 었습니다. Thnx chobeat ..! – John