나는 다소 큰 숫자 입력 배열 인 ~30 million
항목으로 파이썬으로 빈도 테이블을 만드는 효율적인 방법을 구현하려고합니다. 현재 for-loop
을 사용하고 있지만 너무 오래 걸립니다.효율적으로 배열의 항목 수에 대한 빈 테이블을 만드는 방법 Python
입력 양식
Y = np.array([4, 4, 4, 6, 6, 7, 8, 9, 9, 9..... etc])
의 순서 numpy array
내가 형태의 출력을 가지고 싶다 :
Z = {4:3, 5:0, 6:2, 7:1,8:1,9:3..... etc} (as any data type)
현재 나는 다음과 같은 구현을 사용하고 있습니다 :
을Z = pd.Series(index = np.arange(Y.min(), Y.max()))
for i in range(Y.min(), Y.max()):
Z[i] = (Y == i).sum()
이 방법을 사용하지 않고 빠른 방법이 있습니까 iterating
루프를 통해? 도움을 주셔서 감사합니다. 이전에 요청한 경우 미안합니다.
사용 (https://docs.python.org/3 /library/collections.html#collections.Counter) –
사전을 쿼리 한 시간부터 계산 하시겠습니까? 또는 특정 시간에 스냅 샷을 원하십니까? – mypetlion