중복을 포함 할 수있는 데이터 세트가 있습니다. 내가 NumPy와 구조화 된 배열로 인덱스를 넣어 데이터 세트에서 중복을 발견하기 위해, 두 배열의 길이를 비교 한 후 고유 한 값에서 다른 배열을 생성, 배열을 정렬 :두 개의 numpy 구조화 된 배열 사이의 차이 찾기
data = np.zeros(t_len, dtype={'names':['date', 'symbol'], 'formats':['i8', 'S16']})
data[:] = [(x['date'], x['symbol']) for x in tbl.iterrows()]
data.sort(order=['date', 'symbol'])
data2 = np.unique(data)
duplicates = False
if len(data) != len(data2):
duplicates = True
print "There are duplicates"
if not duplicates:
print "No duplicates found"
을 자, 중복을 포함하는 색인을 결정하는 것이 정말로하고 싶습니다. 예를 들어, 경우에게 내가 포함 된 데이터 집합했다 :
array([12322323,'IBM'], [12322323,'IBM'], [12322323,'MSFT'], [12322323,'IBM'])
내가 배열 배열 참조 알고 싶습니다 ([12322323를, 'IBM'은])
나는 독특하고 차이 사용을 검토 한 결과 기능을하지만, 그 일을하지 않는 것 같습니다.
는 구조화 된 어레이의 경우, 다음 재귀 적으로 다른 필드를 확인, 새로운 구조화 된 배열을 얻을 수있는 첫 번째 필드에이 방법을 사용 : 우리는 다음과 같이 중복을 가지고있는 요소를 당겨 수 있습니다. –
그것은 쉬웠다! 감사. –
실제로 np.unique에 return_counts 인수가있는 것 같습니다. 따라서 bincount 할 필요가 없습니다. – ntg