inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전 데이터 사이언스 Part2. 데이터 전처리

선형 분류 예측 실습

In[42] 14:50 코드 질문

268

피카라이언

작성한 질문수 7

0

안녕하세요 선생님.
질문이 너무 많아 죄송스럽네요..!
매번 질문에 답을 쉽게 이해할수있게 달아주셔서 감사합니다.
이번엔 좀 코드적인 부분에서 궁금했는데
# 가중치의 컬럼 이름을 확인하고 큰 값 순으로 정렬하여 보겠다 result = pd.DataFrame({'feature':X.columns,'weight':model.coef_[0].round(3)}) result.sort_values('weight', ascending=False, inplace=True) result
여기서 42번 cell에서 코드가 조금 이해가 안됩니다. 
feature이란 column은 X라는 우리 data에서 column을 가져온거 같고 weight은 어떤원리로 가져왔는지 모르겠습니다. model.coef[0]이라는게 41번째 cell에서 저희가 array로 본거중 0번째만갖고온다는게 무슨뜻인지 잘 모르겠습니다. array의 shape이 (1,12)인걸 알아냈고 여기에서 알아서 feature이랑 weight값 12개랑 자동적으로 매칭이 되나요? (즉, 순서가 다 있다는건가요?) 
조금 질문이 난해한거 같네요.. 죄송합니다.
그리고 inplace=True는 뭐하는 함수인가요?

code python

답변 1

0

김화종

안녕하세요.

41번 셀에서 coef_의 구조가 "2차원" 어레이입니다. [[ 가 두개임. 여기서 [0] 인덱싱을 하면 [ 가 하나인 1차원 어레이 즉, 벡터를 얻습니다. (2차원이 아닌) 1차원 데이터라야 데이터 프레임 results의 한 컬럼 값들로 채우는데 문제가 없습니다.(한 줄 짜리 데이터 구조라야 함). 그래서 [0] 인덱싱을 한 것입니다.

그리고 columns의 순서와 해당 컬럼(변수)의 coef_ 의 순서는 모델이 알아서 차례를 기억합니다.

 inplace=True는 sort_value의 실행 결과를 단순히 출력해 주는데 그치지 않고 원본 데이터인 result에 결과를 반영하여 변경해두라는 뜻입니다.

수고하세요~

수강 신청 연장 문의드립니다.

0

12

1

26년2회 실기기출은 언제쯤...

0

11

2

재귀함수 종료조건

0

6

1

git bash .env

1

11

1

예제 001 실행 안됩니다.

0

13

3

ipython 설치가 안되는거 같습니다.

0

9

1

이론 공부법 요약본 버전 업데이트 문의

0

15

2

피드백 내용 문의드립니다.

0

20

0

백준 서비스 종료로 인한 강의 자료 업데이트 요청드립니다.

0

21

1

백준 사이트 준비중이라 문제를 볼 수 가 없어요

0

21

1

작업형 1번문제... 환경관련

0

23

2

09차 네이버 영화 리뷰 수집 실습 관련 질문

0

25

1

12회 기출은 언제 업데이트 될까요??

0

32

2

알파벤티지 sleep(5) 관련 문의

1

38

2

강의 자료 및 코드 수령

0

29

2

8/6 작성한 연장문의 질문글에 대한 재요청

0

36

2

결측값 처리

0

589

1

n_step 값에 대하여

0

465

1

dir*.csv가 안됩니다.

0

354

1

6 시그마 이상 outlier

0

575

1

로그변환에 대하여

0

662

1

Titanic 데이터셋 PClass cateogrical -> one hot encoding

0

411

1

표준 스케일링관련 문의

0

333

1

6:14초 dataframe 스케일링한 후 컬럼 추가에 대한 질문

0

759

1