나는 주어진 세트 목록을 가지고있다.
sets1 = [{1},{2},{1}]
이 목록에서 numpy를 사용하여 고유 한 요소를 찾으면 unique , 나는 얻을
np.unique(sets1)
Out[18]: array([{1}, {2}, {1}], dtype=object)
보다시피 결과는 다음과 같이 잘못되었다 {1} , 출력에서 반복되는 .
비슷한 요소를 인접하게 만들어 입력의 순서를 변경하면 이런 일이 발생하지 않습니다.
sets2 = [{1},{1},{2}]
np.unique(sets2)
Out[21]: array([{1}, {2}], dtype=object)
왜 이런 일이 발생합니까? 아니면 내가 한 방식에 문제가 있습니까?
sets1.sort()목록의 순서를 변경하지 않는 사실과 관련이 있다고 생각 합니다. 난 당신이 함수를 만들 필요가 있다고 생각f당신이 원하는 기준에 따라 세트를 정렬 한 다음 패스sets1.sort(key=f)에np.unique()