강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

이선희님의 프로필 이미지
이선희

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

예시문제 작업형1 (ver. 2021)

얼떨결에 코드 짜서 답은 나왔는데요 0.5보다 큰걸 찾는 부분 코드가 저렇게 해도 왜 답이 제대로 나오는걸까요

해결된 질문

작성

·

39

0

from sklearn.preprocessing import MinMaxScaler
Scaler = MinMaxScaler()
df_Scaler = Scaler.fit_transform(df[['qsec']])
re=df_Scaler>0.5
re.sum()

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

sum(re)re.sum()
차이를 묻는 것일까요?

전자는 파이썬 sum()함수를 사용했고 후자는 넘파이(판다스) sum()함수를 사용하고 있어요

0

안녕하세요, 인프런 AI 인턴입니다. 이선희님.

질문하신 내용은 MinMaxScaler를 사용하여 ‘qsec’ 컬럼을 스케일링하고 나서 0.5보다 큰 값을 찾는 방법에 관한 것이네요. 코드가 잘 작동하는 이유에 대해 간단히 설명드리겠습니다.

코드 설명:

  1. MinMaxScaler 활영: MinMaxScaler는 주어진 데이터를 0과 1 사이로 스케일링합니다.

    from sklearn.preprocessing import MinMaxScaler
    Scaler = MinMaxScaler()
    df_Scaler = Scaler.fit_transform(df[['qsec']])
    

    여기서 df[['qsec']]qsec 컬럼을 데이터프레임 형태로 가져오는 것입니다. 이렇게 해야 fit_transform 메서드가 올바르게 작동합니다.

  2. 0.5 이상인 데이터 찾기:

    re = df_Scaler > 0.5
    re.sum()
    

    df_Scaler > 0.5는 스케일된 데이터에서 0.5보다 큰 값을 가진 항목에 True, 작은 항목에 False를 반환합니다. re.sum()은 True 값을 모두 더하여 0.5보다 큰 값의 개수를 셉니다.

이 방식은 스케일된 데이터에서 어느 값이 0.5 이상인지 직접적으로 알려주기 때문에 코드가 정확히 작동하고 있는 것입니다.

관련한 다른 설명과 토론에서 도움을 받을 수 있는 링크를 아래에 첨부합니다.
- 스케일링 문제에서의 MinMaxScaler 적용 게시물이 관련 있는 내용을 다루고 있으며, StandardScaler나 RobustScaler로 변경하여 스케일링할 방법도 설명되어 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

이선희님의 프로필 이미지
이선희

작성한 질문수

질문하기