inflearn logo
강의

Course

Instructor

Practical Data Science Part 2. Data Preprocessing

Linear Classification Prediction Practice

In[42] 14:50 코드 질문

247

donggeunko2496

7 asked

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

Answer 1

0

hjkim3

안녕하세요.

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

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

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

수고하세요~

전처리 관련질문

0

3

2

수강기간즘연장해주세요

0

4

1

작업형3 기출

0

6

1

유형2에서 데이터분할 생략 가능여부

0

7

1

9회 기출 유형3 질문

0

8

1

lgb 기초편

0

5

1

수업자료 문의

0

8

1

괄호 사용

0

9

1

작업형 2 데이터 전처리 질문

0

9

0

11회 기출 유형 작업형1 문제 3-1

0

9

0

7회 3유형 2번문제 질문

0

8

1

예시문제 작업형2 (ver2023) 질문입니다

0

11

1

Data type에 따른 처리

0

7

1

Cursor 실행 문의

1

11

2

데이터 전처리 관련

0

14

2

시험에서 문제 불러오기

0

12

2

결측값 처리

0

576

1

n_step 값에 대하여

0

451

1

dir*.csv가 안됩니다.

0

327

1

6 시그마 이상 outlier

0

557

1

로그변환에 대하여

0

644

1

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

0

385

1

표준 스케일링관련 문의

0

317

1

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

0

740

1