2017-05-23 4 views

답변

2

아래 스 니펫은 귀하의 요구 사항을 충족시킵니다. 샘플 데이터 세트에는 세 개의 열 (col1, col2, col3)이 있습니다. col3에는 고유 한 값 3 만 있고 col1과 col2에는 6 개의 고유 한 값이 있습니다. 최종 데이터 프레임에는 co11 및 col2 만 있습니다.

df = spark.createDataFrame([(1,2,3),(10,20,3),(20,40,3),(40,50,3),(50,60,3),(60,70,3)],['col1','col2','col3']) 
columns = [ column for column in df.columns if len(df.select(column).distinct().collect()) >= 6 ] 
>>> df.select(columns).show() 
+----+----+ 
|col1|col2| 
+----+----+ 
| 1| 2| 
| 10| 20| 
| 20| 40| 
| 40| 50| 
| 50| 60| 
| 60| 70| 
+----+----+ 
+1

고마워요! 그것은 내가 필요한 것입니다! – jartymcfly

관련 문제