작성
·
416
0
안녕하세요 선생님. 추천시스템 공부하다가 코드에 의문이 생겨서 질문을 남깁니다. ㅎㅎ 보시는 것처럼 similar_indexes에서 reshape(-1)을 하지 않으면 2차원 배열로 만들어지기 때문에 reshape(-1)을 하는 것이잖아요?? 근데 보시는 것처럼 reshape을 하지 않고 "기준 영화 index 제외" 부분에서 불리언 인덱싱을 하는 순간 차원이 reshape(-1)을 하는 것처럼 바뀌더라구요..!! 무슨 이유인지 여쭤봐도 될까요? ㅠㅠ 좋은 강의 감사합니다. 항상
답변 1
1
안녕하십니까,
boolean indexing도 fancy indexing과 마찬가지로 위치 인덱스값을 리스트로 변환합니다. 단 True인 값만 변환합니다. 아래는 샘플 코드 입니다. [a==1] 을 하게 되면 True인 위치 인덱스 값이 [0, 0], [1, 0], [2,0]으로 나타납니다. 이 위치 인덱스 값을 통해 값을 찾으면 1차원의 값이 됩니다.
import numpy as np
a = np.zeros((3, 3))
a[:, 0] = 1
print('a:',a)
print([a==1])
b=a[a==1]
print('b:',b)
저도 모르고 있었는데, 위에 주신대로 코드를 작성하면 별도로 reshape를 할 필요가 없겠군요. 좋은 질문 감사합니다.