首页 > 解决方案 > 如何将列表 pandas DataFrame 单元格显示为多行

问题描述

不确定这是否有意义,但基本上我有一个看起来像这样的数据框:

第 1 列 (str) 第 2 列(整数) 第 3 列(列表)
名称1 [文本(01),文本(02),...,文本(n)]
名称2 [文本(11),文本(12),...,文本(m)]

其中一列是字符串列表,在本例中为 col 3,并且 n!=m。

我想知道的是是否有办法以更易读的方式显示它们,例如:

第 1 列 (str) 第 2 列(整数) 第 3 列(列表)
名称1 文字(01)
...
文本(n)
名称2 正文(11)
...
文字(米)

我很欣赏这看起来很混乱,但我的意图是让所有文本都显示在一个单元格中,只是带有换行符,而不是如上表所示被拆分为多行。

先感谢您。

标签: pythonpandasdataframe

解决方案


pandas 中有explode - 功能 - 它部分解决了问题 - 但在这种情况下 [col1] + [col2] 将被复制。

explode() 函数用于将列表中的每个元素转换为一行,复制索引值。

df1 = df1.explode('col3name')
df1.explode('col3name')

最初的:

在此处输入图像描述

爆炸后:

在此处输入图像描述


推荐阅读