>  기사  >  백엔드 개발  >  Pandas DataFrames에서 쉼표로 구분된 값을 여러 행으로 분할하는 방법은 무엇입니까?

Pandas DataFrames에서 쉼표로 구분된 값을 여러 행으로 분할하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-28 08:40:03626검색

How to Split Comma-Separated Values into Multiple Rows in Pandas DataFrames?

Pandas DataFrames에서 셀을 여러 행으로 분할

Pandas 데이터 프레임에서 쉼표로 구분된 값을 처리할 때 이를 자체 행으로 변환하면 추가 분석을 위해 필요합니다. 이를 달성하는 방법은 다음과 같습니다.

Pandas의 경우 >= 0.25:

이 방법은 프로세스를 단순화합니다.

<code class="python">(df.set_index(['order_id', 'order_date'])
   .apply(lambda x: x.str.split(',').explode())
   .reset_index())                                                   

   order_id order_date package package_code
0         1  20/5/2018      p1         #111
1         1  20/5/2018      p2         #222
2         1  20/5/2018      p3         #333
3         3  22/5/2018      p4         #444
4         7  23/5/2018      p5         #555
5         7  23/5/2018      p6         #666</code>

의 경우 Pandas <= 0.24:

이전 Pandas 버전의 경우 다른 접근 방식이 필요합니다.

<code class="python">(df.set_index(['order_date', 'order_id'])
   .stack()
   .str.split(',', expand=True)
   .stack()
   .unstack(-2)
   .reset_index(-1, drop=True)
   .reset_index()
)

  order_date  order_id package package_code
0  20/5/2018         1      p1         #111
1  20/5/2018         1      p2         #222
2  20/5/2018         1      p3         #333
3  22/5/2018         3      p4         #444
4  23/5/2018         7      p5         #555
5  23/5/2018         7      p6         #666</code>

세부 정보:

둘 다 방법에는 여러 단계가 포함됩니다.

  • 분할되지 않는 열을 인덱스로 설정합니다.
  • str.split을 사용하여 쉼표로 값을 분할합니다.
  • 분할 값을 행으로 쌓습니다. .
  • 분할된 값을 별도의 열로 이동하려면 스택을 해제하세요.
  • 최종 인덱스를 재설정하세요.

위 내용은 Pandas DataFrames에서 쉼표로 구분된 값을 여러 행으로 분할하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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