首页 > 解决方案 > 如何合并熊猫数据框中的单元格以用作标题?

问题描述

我在熊猫中制作了一个非常简单的单行数据框:

df = pd.DataFrame([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]],
                  columns=['x', 'y',
                           'Vx', 'Vy', 'V',
                           'ax', 'ay', 'a',
                           'at', 'an', 'r'])

它看起来像这样

+----+----+----+----+----+----+----+----+----+----+----+
|  x |  y |  Vx|  Vy|  V |  ax|  ay|  a |  at|  an|  r |
+----+----+----+----+----+----+----+----+----+----+----+
|  1 |  2 |  3 |  4 |  5 |  6 |  7 |  8 |  9 | 10 | 11 |
+----+----+----+----+----+----+----+----+----+----+----+

但我希望它看起来像这样:

+----+----+----+----+----+----+----+----+----+----+----+
|coordin. |     speed    |       acceleration     |rad |
+----+----+----+----+----+----+----+----+----+----+----+
|  x |  y |  Vx|  Vy|  V |  ax|  ay|  a |  at|  an|  r |
+----+----+----+----+----+----+----+----+----+----+----+
|  1 |  2 |  3 |  4 |  5 |  6 |  7 |  8 |  9 | 10 | 11 |
+----+----+----+----+----+----+----+----+----+----+----+

所以我想使用合并的单元格作为某种标题。棘手的是,正如您所看到的,每个标题包含不同数量的列。我应该怎么做才能让我的桌子看起来像这样?

标签: pythonpandasdataframe

解决方案


似乎您想要在列上使用多索引...

df2 = pd.DataFrame([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]],
                  columns=[['coord','coord',
                  'vel','vel','vel',
                  'acc','acc','acc','acc','acc',
                  'rad'],
                  ['x', 'y',
                  'Vx', 'Vy', 'V',
                  'ax', 'ay', 'a',
                  'at', 'an', 'r']])

推荐阅读