- 최소/최대값을 기준으로 원하는 범위 내의 값으로 스케일링 한 후 새로운 DataFrame을 생성한다.
- selectedColumnId: 스케일링을 적용할 column ID (repeated)
- max: 스케일된 최댓값 (required)
- min: 스케일된 최솟값 (required)
- withMinMaxRange: 실제 최소, 최댓값 사용 여부 (required)
- maxRealValue: 실제 데이터의 최댓값 (optional)
- minRealValue: 실제 데이터의 최솟값 (optional)
PRCS_YEAR |
PRCS_MON |
PRCS_DAY |
PRCS_HH |
PRCS_MIN |
LINK_ID |
PRCS_SPD |
2015 |
09 |
01 |
00 |
00 |
1000000100 |
1.0 |
2015 |
09 |
01 |
00 |
00 |
1000000200 |
2.0 |
2015 |
09 |
01 |
00 |
00 |
1000000300 |
3.0 |
2015 |
09 |
01 |
00 |
00 |
1000000400 |
4.0 |
2015 |
09 |
01 |
00 |
00 |
1000000500 |
5.0 |
PRCS_YEAR |
PRCS_MON |
PRCS_DAY |
PRCS_HH |
PRCS_MIN |
LINK_ID |
PRCS_SPD |
2015 |
09 |
01 |
00 |
00 |
1000000100 |
-1.0 |
2015 |
09 |
01 |
00 |
00 |
1000000200 |
-0.5 |
2015 |
09 |
01 |
00 |
00 |
1000000300 |
0.0 |
2015 |
09 |
01 |
00 |
00 |
1000000400 |
0.5 |
2015 |
09 |
01 |
00 |
00 |
1000000500 |
1.0 |
- 최솟값은 -1 최댓값은 1로 설정을 하였다.
- 결과 DataFrame의 PRCS_SPD column을 보면 최소 -1부터 최대 1까지 scaling이 된 것을 확인할 수 있다.
- parameter는 다음과 같이 설정하였다.
val maxMinScalingInfo = MinMaxScalingInfo.newBuilder()
.addSelectedColumnId(0)
.setMax("1")
.setMin("-1")
.setMaxRealValue("1")
.setMinRealValue("-1")
.setWithMinMaxRange(false)
.build