Home  >  Article  >  Backend Development  >  Here are some question-style titles based on the information provided: Clear and Concise: * How to Split Comma-Separated Values into Multiple Rows in a Pandas DataFrame? * Splitting Columns with Com

Here are some question-style titles based on the information provided: Clear and Concise: * How to Split Comma-Separated Values into Multiple Rows in a Pandas DataFrame? * Splitting Columns with Com

Patricia Arquette
Patricia ArquetteOriginal
2024-11-02 05:53:29436browse

Here are some question-style titles based on the information provided:

Clear and Concise:

* How to Split Comma-Separated Values into Multiple Rows in a Pandas DataFrame?
* Splitting Columns with Comma-Separated Lists into Multiple Rows in Pandas
* Trans

Split Cells into Multiple Rows in pandas DataFrame

Question:

How can I split comma-separated [package and package_code] columns into multiple rows in a pandas DataFrame, creating a new row for each package with its corresponding order details?

Answer:

Method 1: (pandas >= 0.25)

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

Method 2: (pandas <= 0.24)

<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()
)</code>

Details:

  1. Set the columns that should not be split as the index.
  2. Use stack() to flatten the rows.
  3. Use str.split() with expand=True to split the values on the comma and expand them into columns.
  4. Stack the resulting DataFrame again to flatten the rows.
  5. Use unstack(-2) to create new columns from the second last level of the index.
  6. Use reset_index(-1, drop=True) to remove the superfluous last level of the index.
  7. Reset the index to return it to the original order.

The above is the detailed content of Here are some question-style titles based on the information provided: Clear and Concise: * How to Split Comma-Separated Values into Multiple Rows in a Pandas DataFrame? * Splitting Columns with Com. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn