하나의 리스트를 여러개로 나누기

2024. 1. 31. 10:19·파이썬/Basic
반응형

리스트를 나누는 방법에는 여러 가지가 있습니다. 가장 일반적인 방법은 for 루프를 사용하는 것입니다.

다음은 for 루프를 사용하여 리스트를 1000개씩 나누는 코드입니다.

for문 사용

index = [row.index[i * 1000:(i + 1) * 1000].tolist() for i in range(0, int(len(row.index) / 1000))]

이 코드는 다음과 같이 작동합니다.

  1. range() 함수를 사용하여 0부터 len(row.index) / 1000 미만의 값을 생성합니다.
  2. for 루프를 사용하여 생성된 값을 순회합니다.
  3. i * 1000부터 (i + 1) * 1000까지의 인덱스 값을 가져옵니다.
  4. 가져온 인덱스 값을 리스트로 변환합니다.
  5. 변환된 리스트를 index 리스트에 추가합니다.

이 코드는 작동하지만 효율적이지 않습니다. for 루프를 사용하는 경우 각 반복마다 row.index 리스트를 처음부터 끝까지 순회해야 합니다. 이는 메모리와 CPU 사용량을 증가시킬 수 있습니다.

 

NumPy 사용

NumPy는 과학 계산을 위한 파이썬 라이브러리입니다. NumPy는 리스트 나누기 기능을 제공합니다. 다음은 NumPy를 사용하여 리스트를 1000개씩 나누는 코드입니다.

import numpy as np

index = np.array_split(row.index, len(row.index) / 1000)
index = [chunk.tolist() for chunk in index]

이 코드는 다음과 같이 작동합니다.

  1. np.array_split() 함수를 사용하여 row.index 리스트를 1000개씩 나눕니다.
  2. tolist() 메서드를 사용하여 반환된 NumPy 배열을 리스트로 변환합니다.

이 코드는 for 루프를 사용하지 않기 때문에 효율적입니다. np.array_split() 함수는 row.index 리스트를 한 번만 순회하여 1000개의 리스트를 생성합니다. 따라서 메모리와 CPU 사용량을 줄일 수 있습니다.

 

저작자표시 비영리 변경금지 (새창열림)

'파이썬 > Basic' 카테고리의 다른 글

requests : 간편한 HTTP 요청  (0) 2024.02.05
파이썬 리스트 컴프리헨션  (1) 2024.02.01
문자열 공백 제거하기  (1) 2024.01.27
딕셔너리에 키값을 검사하는 방법  (1) 2024.01.25
빈 시퀀스(String, Tuple, List) 확인하기  (0) 2024.01.13
'파이썬/Basic' 카테고리의 다른 글
  • requests : 간편한 HTTP 요청
  • 파이썬 리스트 컴프리헨션
  • 문자열 공백 제거하기
  • 딕셔너리에 키값을 검사하는 방법
코샵
코샵
나의 코딩 일기장
    반응형
  • 코샵
    끄적끄적 코딩 공방
    코샵
    • 분류 전체보기 (727)
      • 스마트팜 (1)
      • 상품 추천 (223)
      • DataBase (0)
        • MongoDB (4)
        • PostgreSQL (0)
      • 하드웨어 (18)
      • 일기장 (4)
      • 파이썬 (130)
        • Basic (41)
        • OpenCV (8)
        • Pandas (15)
        • PyQT (3)
        • SBC(Single Board Computer) (1)
        • 크롤링 (14)
        • Fast API (29)
        • Package (6)
      • Unity (138)
        • Tip (41)
        • Project (1)
        • Design Pattern (8)
        • Firebase (6)
        • Asset (2)
      • Linux (4)
      • C# (97)
        • Algorithm (11)
        • Window (7)
      • TypeScript (51)
        • CSS (10)
      • Git (11)
      • SQL (5)
      • Flutter (10)
        • Tip (1)
      • System (1)
      • BaekJoon (6)
      • Portfolio (2)
      • MacOS (1)
      • 유틸리티 (1)
      • 서비스 (6)
      • 자동화 (3)
      • Hobby (10)
        • 물생활 (10)
        • 식집사 (0)
  • 인기 글

  • 태그

    리뷰관리
    unity
    리뷰이관
    믈레코비타멸균우유
    learntocode
    스크립트 실행 순서
    셀레니움
    파이썬
    유니티
    ipcamera
    codingcommunity
    라떼우유
    appdevelopment
    Python
    카페24리뷰이관
    상품 리뷰 크롤링
    스크립트 실행
    programmerlife
    스마트스토어리뷰
    긴유통기한우유
    codingtips
    programming101
    devlife
    cv2
    list
    rtsp
    C#
    카페24리뷰
    쇼핑몰리뷰
    리스트
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코샵
하나의 리스트를 여러개로 나누기
상단으로

티스토리툴바