본문 바로가기
MATLAB 코딩/기초

[matlab 공부하자] 9. 2가지의 input 데이터를 입력하면 자동으로 합격자와 불합격자를 서로 다른 행렬에 저장하는 코드

by bigpicture 2019. 7. 1.
반응형

9. 2가지의 input 데이터를 입력하면 자동으로 합격자와 불합격자를 서로 다른 행렬에 저장하는 코드




logistic regression에서 사용되는 스킬?인데 간단한 예시로 배워봅시다. 


학생들의 중간고사 점수, 기말고사 점수와 합격 여부를 알고 있다고 해봅시다. 아래와 같이 표현됩니다. 


학생1 : 95,97,1


첫열은 중간고사점수, 둘째열은 기말고사 점수, 셋째열은 합격(1)입니다. 불합격은 (0)으로 표시합니다. 

아래와 같은 데이터가 있다고 해봅시다. 


95 97 1

94 93 1

77 76 0

65 84 0

100 88 1

97 91 1

55 67 0


총 7학생의 데이터가 있는데, 이렇게 데이터를 입력하면 자동으로 합격자와 불합격자를 서로 다른 행렬에 저장하는 코드를 짜봅시다. 입력 데이터를 A라고 합시다. 


A=[95 97 1;94 93 1;77 76 0; 65 84 0;100 88 1;97 91 1;55 67 0];


%X에 점수데이터, y에 합격여부 데이터를 입력합니다. 


X = A(:, [1, 2]); y = A(:, 3);



>> X

X =


    95    97

    94    93

    77    76

    65    84

   100    88

    97    91

    55    67


>> y

y =


   1

   1

   0

   0

   1

   1

   0


%합격자와 불합격자의 행을 찾습니다. 


Pass = find(y==1); NonP = find(y == 0);



%합격자는 합격자행만, 불합격자는 불합격자 행만 포함되도록 새로운 행렬을 각각 정의합니다. 


Pass_student =[X(Pass, 1),X(Pass, 2)];

NonP_student=[X(NonP, 1),X(NonP, 1)];

반응형

댓글