Pandas : 대용량 데이터 프레임을 검색하는 가장 빠른 방법은 무엇입니까?

user1871528

팬더 초보자 질문 :

수백만 개의 행이있는 데이터 프레임이 있으며 샘플 출력은 다음과 같습니다.

c_id  c1   c2
0     10  100
0     15  110
0     15  112
2     96  120
56    43  42

각 customer_id에 대해 몇 가지 작업을 수행하는 테이블을 만들고 싶습니다. 가장 좋은 방법은 무엇입니까? 데이터 프레임을 c_id로 정렬 한 다음 인덱스를 설정했습니다.

df = df.sort('c_id', ascending=False)
df = df.set_index('c_id')

그러나 다음과 같은 간단한 작업 :

temp_df = df.loc[:0]

이 문제에 접근하는 가장 빠른 방법은 무엇입니까? 나는 정렬 된 set_index가 트릭을 할 것이라고 생각했습니다. 아닐 것 같아요.

EDIT1 :

c_id의 각 값에 대해 c1의 모든 고유 값 목록을 가져오고 싶습니다. 그래서 다음과 같습니다.

df.loc[:0].c1.unique()
FLab

명시 적으로 그룹을 만들지 말고 pandas groupby를 사용 하세요.

예를 들어 클라이언트의 평균 값을 찾으려고하면 다음을 수행 할 수 있습니다.

df.groupby(by = df['c_id']).mean()

등등.

.apply.transform메서드를 사용하여 (거의) 임의의 변환을 적용 할 수도 있습니다 ( 평균, 표준, 최소, 최대와 같은 내장 메서드가 최적화 되었기 때문에 훨씬 더 효율적이지만).

특정 질문에 대답하려면 다음을 수행하십시오.

df.groupby('c_id').c1.nunique()

다음을 제공합니다.

c_id
0     2
20    1
56    1
Name: c1, dtype: int64

몇 가지 질문 ( thisthis )은 .nunique가 더 빠른 방법이 아니며 이것이 다른 방법이라는 것을 암시합니다.

df.groupby('c_id').c1.apply(lambda x: len(x.unique()))

(저는 벤치마킹을하지 않았습니다 ...)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

정렬 된 dask 데이터 프레임을 반복하는 가장 빠른 방법은 무엇입니까?

분류에서Dev

두 팬더 데이터 프레임의 행을 비교하는 가장 빠른 방법은 무엇입니까?

분류에서Dev

Pandas에서 행 값을 다른 데이터 프레임으로 대체하는 가장 쉬운 방법은 무엇입니까?

분류에서Dev

Pandas로 데이터 프레임을 반복 할 때 if / else 문을 사용하는 가장 빠른 방법

분류에서Dev

Pandas 데이터 프레임을 "압축 해제"하는 가장 빠른 방법

분류에서Dev

Pandas 데이터 프레임 열에 다른 값을 저장하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

빠른 사용자 인터페이스 와일드 카드 텍스트 검색 (MS Access)을 구현하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임을 캐시하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

다른 데이터 프레임을 사용하여 데이터 프레임에 열을 추가하는 방법은 무엇입니까?

분류에서Dev

다단계 사전에서 플랫 데이터 프레임을 만드는 가장 좋은 (그리고 가장 빠른) 방법은 무엇입니까?

분류에서Dev

Postgres 용 C #에서 테이블 필드의 데이터베이스 데이터 유형을 얻는 가장 빠르고 빠른 방법은 무엇입니까?

분류에서Dev

* 데이터 복구없이 * 불량 섹터를 표시하는 가장 빠른 방법은 무엇입니까?

분류에서Dev

데이터 프레임의 최대 값을 인덱싱하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

목록에 주어진 키워드 값을 검색하여 Python pandas 데이터 프레임에 새 열을 추가하는 방법은 무엇입니까?

분류에서Dev

누락 된 분기에 대한 데이터가 0 인 행을 Pandas 데이터 프레임에 삽입하는 방법은 무엇입니까?

분류에서Dev

여러 열에서 Pandas 데이터 프레임을 필터링하는 가장 빠른 방법

분류에서Dev

다른 데이터 프레임 열로 Pandas 행을 필터링하는 방법은 무엇입니까?

분류에서Dev

다른 데이터 프레임의 한 데이터 프레임에서 모든 값을 찾는 가장 좋은 방법은 무엇입니까?

분류에서Dev

Pandas를 사용하여 데이터 프레임의 문자열을 정수 ID로 빠르게 변경하는 방법은 무엇입니까?

분류에서Dev

python-pandas를 사용하여 데이터 프레임을 큰 행렬로 빠르게 변환하는 방법은 무엇입니까?

분류에서Dev

다른 열을 사용하여 Pandas 데이터 프레임에서 사용자 정의 필드를 생성하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

Pandas를 사용하여 여러 CSV / 데이터 프레임을 병합하고 추가하는 가장 빠른 방법

분류에서Dev

목록을 사용하여 팬더 데이터 프레임을 필터링하는 가장 빠른 방법

분류에서Dev

빈 데이터 프레임 값을 다른 데이터 프레임 (Pandas)의 값으로 업데이트하는 방법은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임을 다른 N 행과 연결하는 방법은 무엇입니까?

분류에서Dev

Python : 다른 Pandas 데이터 프레임 열 간의 평균을 계산하는 방법은 무엇입니까?

분류에서Dev

Pandas MultiIndex 데이터 프레임의 값을 모양이 다른 다른 MultiIndex 데이터 프레임에 매핑하는 방법은 무엇입니까?

분류에서Dev

Python 3을 사용하여 파일 (Postgres에서 생성)을 메모리 내 SQLite 데이터베이스로 대량로드하는 가장 빠른 방법은 무엇입니까?

분류에서Dev

데이터 프레임에서 값을 가져 오기 위해 해시 맵 / 사전을 사용하는 방법은 무엇입니까? R의 for 루프에 대한 더 빠른 대안

Related 관련 기사

  1. 1

    정렬 된 dask 데이터 프레임을 반복하는 가장 빠른 방법은 무엇입니까?

  2. 2

    두 팬더 데이터 프레임의 행을 비교하는 가장 빠른 방법은 무엇입니까?

  3. 3

    Pandas에서 행 값을 다른 데이터 프레임으로 대체하는 가장 쉬운 방법은 무엇입니까?

  4. 4

    Pandas로 데이터 프레임을 반복 할 때 if / else 문을 사용하는 가장 빠른 방법

  5. 5

    Pandas 데이터 프레임을 "압축 해제"하는 가장 빠른 방법

  6. 6

    Pandas 데이터 프레임 열에 다른 값을 저장하는 가장 좋은 방법은 무엇입니까?

  7. 7

    빠른 사용자 인터페이스 와일드 카드 텍스트 검색 (MS Access)을 구현하는 가장 좋은 방법은 무엇입니까?

  8. 8

    Pandas 데이터 프레임을 캐시하는 가장 좋은 방법은 무엇입니까?

  9. 9

    다른 데이터 프레임을 사용하여 데이터 프레임에 열을 추가하는 방법은 무엇입니까?

  10. 10

    다단계 사전에서 플랫 데이터 프레임을 만드는 가장 좋은 (그리고 가장 빠른) 방법은 무엇입니까?

  11. 11

    Postgres 용 C #에서 테이블 필드의 데이터베이스 데이터 유형을 얻는 가장 빠르고 빠른 방법은 무엇입니까?

  12. 12

    * 데이터 복구없이 * 불량 섹터를 표시하는 가장 빠른 방법은 무엇입니까?

  13. 13

    데이터 프레임의 최대 값을 인덱싱하는 가장 좋은 방법은 무엇입니까?

  14. 14

    목록에 주어진 키워드 값을 검색하여 Python pandas 데이터 프레임에 새 열을 추가하는 방법은 무엇입니까?

  15. 15

    누락 된 분기에 대한 데이터가 0 인 행을 Pandas 데이터 프레임에 삽입하는 방법은 무엇입니까?

  16. 16

    여러 열에서 Pandas 데이터 프레임을 필터링하는 가장 빠른 방법

  17. 17

    다른 데이터 프레임 열로 Pandas 행을 필터링하는 방법은 무엇입니까?

  18. 18

    다른 데이터 프레임의 한 데이터 프레임에서 모든 값을 찾는 가장 좋은 방법은 무엇입니까?

  19. 19

    Pandas를 사용하여 데이터 프레임의 문자열을 정수 ID로 빠르게 변경하는 방법은 무엇입니까?

  20. 20

    python-pandas를 사용하여 데이터 프레임을 큰 행렬로 빠르게 변환하는 방법은 무엇입니까?

  21. 21

    다른 열을 사용하여 Pandas 데이터 프레임에서 사용자 정의 필드를 생성하는 가장 좋은 방법은 무엇입니까?

  22. 22

    Pandas를 사용하여 여러 CSV / 데이터 프레임을 병합하고 추가하는 가장 빠른 방법

  23. 23

    목록을 사용하여 팬더 데이터 프레임을 필터링하는 가장 빠른 방법

  24. 24

    빈 데이터 프레임 값을 다른 데이터 프레임 (Pandas)의 값으로 업데이트하는 방법은 무엇입니까?

  25. 25

    Pandas 데이터 프레임을 다른 N 행과 연결하는 방법은 무엇입니까?

  26. 26

    Python : 다른 Pandas 데이터 프레임 열 간의 평균을 계산하는 방법은 무엇입니까?

  27. 27

    Pandas MultiIndex 데이터 프레임의 값을 모양이 다른 다른 MultiIndex 데이터 프레임에 매핑하는 방법은 무엇입니까?

  28. 28

    Python 3을 사용하여 파일 (Postgres에서 생성)을 메모리 내 SQLite 데이터베이스로 대량로드하는 가장 빠른 방법은 무엇입니까?

  29. 29

    데이터 프레임에서 값을 가져 오기 위해 해시 맵 / 사전을 사용하는 방법은 무엇입니까? R의 for 루프에 대한 더 빠른 대안

뜨겁다태그

보관