python - 在 Pandas 中拆分堆叠数据框

标签 python pandas dataframe

我有一个类似的数据框

         age sex      values
time                        
2015      10   F    589628.0
2015      10   M    458390.0
2015      11   F    108018.0
2015      11   M    764350.0
 ....
2000      60   M     34676.0
2000      60   F     45488.0

我想像这样创建数据框

         age   F           M
time                        
2015      10   589628.0  458390.0    
2015      11   
 ....
2000      60   45488.0   34676.0

将行减半并添加一列。我曾尝试使用 pivot 执行此操作,但无济于事。

df.pivot(columns='sex', values='values') 

但这会返回

Index contains duplicate entries, cannot reshape

有什么想法可以在不编写繁琐的函数的情况下干净地拆分数据框吗?

干杯,迈克

最佳答案

这个我不能确定,但​​应该是

df.set_index(['age', 'sex'], append=True)['values'].unstack().reset_index('age')

关于python - 在 Pandas 中拆分堆叠数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39550927/

相关文章:

python - 如何构建具有滚动总计的 Python 函数?

python - 将分类值转换为 Pandas 中的列

r - Traminer:具有观察次数的平均时间条形图

python - 如何从同一数据帧中查找另一列中包含唯一值的列值?

python - 在 python 中给定两个列表,一个是字符串,一个是对象,你如何映射它们?

python - 如何在 Python 的列表理解中使用正则表达式?

python - 谁能解释一下Python中的函数闭包?

python - 值包含分隔符的 ParserError

python - 将函数应用于 Pandas 数据框中的特定单元格

sorting - 如何使用 R rank() 函数创建新的 ties.method?