首页 > 后端开发 > Python教程 > 如何将 pandas DataFrame 中的列表解压缩为单独的行?

如何将 pandas DataFrame 中的列表解压缩为单独的行?

Susan Sarandon
发布: 2024-11-13 09:24:02
原创
202 人浏览过

How can I unpack lists in pandas DataFrames into individual rows?

将 DataFrame 中的列表解包为单独的行

在数据操作场景中,您可能会遇到将包含列表的 pandas 单元格转换为单独的行。为了实现这一点,您可以利用 pandas 的explode() 方法的功能。

在 pandas 0.25 之前,处理此操作需要更麻烦的方法。然而,explode() 的引入简化了这个过程。

考虑以下示例:

import pandas as pd

df = pd.DataFrame({'name': ['A.J. Price'] * 3, 
                    'opponent': ['76ers', 'blazers', 'bobcats'], 
                    'nearest_neighbors': [['Zach LaVine', 'Jeremy Lin', 'Nate Robinson', 'Isaia']] * 3})
df.set_index(['name', 'opponent'])
登录后复制

使用上面的 DataFrame,您的目标是将值解压并堆叠到nearest_neighbors 列中,导致每个值成为每个相应对手中的一行。

以下是使用explode()方法实现此目的的方法:

df.explode('nearest_neighbors')
登录后复制

输出将如下所示:

                    nearest_neighbors
name       opponent                  
A.J. Price 76ers          Zach LaVine
           76ers           Jeremy Lin
           76ers        Nate Robinson
           76ers                Isaia
           blazers        Zach LaVine
           blazers         Jeremy Lin
           blazers      Nate Robinson
           blazers              Isaia
           bobcats        Zach LaVine
           bobcats         Jeremy Lin
           bobcats      Nate Robinson
           bobcats              Isaia
登录后复制

通过利用explode()方法,您可以有效地将原始的类似列表的列转换为行,从而提供更加结构化和易于管理的数据表示。

以上是如何将 pandas DataFrame 中的列表解压缩为单独的行?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板