>  기사  >  백엔드 개발  >  다음은 질문-답변 형식과 Python의 데이터 쌍 그룹화에 대한 기사의 초점을 염두에 두고 몇 가지 제목 옵션입니다. 옵션 1(일반): * S를 기반으로 Python에서 데이터 쌍을 그룹화하는 방법

다음은 질문-답변 형식과 Python의 데이터 쌍 그룹화에 대한 기사의 초점을 염두에 두고 몇 가지 제목 옵션입니다. 옵션 1(일반): * S를 기반으로 Python에서 데이터 쌍을 그룹화하는 방법

DDD
DDD원래의
2024-10-27 09:04:30825검색

Here are a few title options, keeping in mind the question-answer format and the article's focus on grouping data pairs in Python:

Option 1 (General):

* How to Group Data Pairs in Python Based on Specific Indices?

Option 2 (Specific to the Solution):

Python Group By

문제:

주어진 데이터 쌍 세트를 그룹화하세요. 지정된 인덱스의 값을 기반으로 원하는 형식으로 변환합니다.

해결책:

데이터 쌍을 유형별로 효율적으로 그룹화하려면 다음 단계를 따르세요.

1단계: 사전 생성

컬렉션 모듈의 defaultdict를 사용하여 사전을 생성합니다. 여기서 키는 유형이고 값은 값 목록입니다.

<code class="python">from collections import defaultdict

res = defaultdict(list)
for v, k in input:
    res[k].append(v)</code>

2단계: 사전을 원하는 형식으로 변환

생성된 사전을 원하는 형식의 사전 목록으로 변환:

<code class="python">result = [{'type': k, 'items': v} for k,v in res.items()]</code>

추가 고려 사항:

  • Python 3.7 이전 버전에서 키의 원래 순서를 유지하려면 컬렉션 모듈의 OrderedDict를 사용하세요.
  • Python 버전 3.7의 경우 이상에서는 일반 사전이 삽입 순서를 유지합니다.

대체 접근 방식 **itertools.groupby()**:

대체 접근 방식은 다음을 사용하는 것입니다. itertools.groupby 함수를 사용하지만 입력 데이터를 terlebih dahulu로 정렬해야 합니다.

<code class="python">import operator as itemgetter
import itertools

sorted_input = sorted(input, key=itemgetter(1))
groups = itertools.groupby(sorted_input, key=itemgetter(1))
result = [{'type': k, 'items':[x[0] for x in v]} for k, v in groups]</code>

위 내용은 다음은 질문-답변 형식과 Python의 데이터 쌍 그룹화에 대한 기사의 초점을 염두에 두고 몇 가지 제목 옵션입니다. 옵션 1(일반): * S를 기반으로 Python에서 데이터 쌍을 그룹화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.