首页 > 解决方案 > Python数据框在列中逐行添加

问题描述

我有这样的数据框

当前数据框

有什么办法可以转换成这个

所需的数据框

我尝试遍历数据框而不是遍历等级数组并添加到新数据框,但似乎不是最有效或最简单的方法是否有任何内置方法或更好的方法来解决这个问题

PS:我搜索了类似的问题,但如果有这样的问题我找不到它非常抱歉我会立即删除

标签: pythonpandas

解决方案


你想要的是pandas.DataFrame.explode()

import ast

# Make sure column A is list first.
df['A'] = df['A'].apply(ast.literal_eval)
# or
df['A'] = df['A'].apply(pd.eval)

df = df.explode('Grades')
df = df.rename(columns={'Grades': 'Grade'})

推荐阅读