<p>如果我没弄错,你是从类似的情况开始的:</p>
<pre><code>columns = list(sum(list(zip(['Forces{}'.format(i) for i in range(4)], ['Distances{}'.format(i) for i in range(4)])), ()))
df = pd.DataFrame(np.random.randint(1, 11, size=(100, 8)), columns=columns)
Forces0 Distances0 Forces1 Distances1 Forces2 Distances2 Forces3 \
0 3 5 8 3 7 4 2
1 1 4 10 9 9 3 6
2 10 3 1 3 3 7 8
3 2 1 3 6 10 10 10
4 4 2 9 1 3 10 8
Distances3
0 8
1 5
2 3
3 8
4 8
</code></pre>
<p>您的目标是使不同的<code>Distance</code>列形成一个<code>index</code>,而相应的<code>Force</code><code>columns remain in place. You could</code>堆栈框架如下:</p>
^{pr2}$
<p>获得:</p>
<pre><code> Forces0 Forces1 Forces2 Forces3
Distance
9 7 4 6 7
9 7 4 6 7
1 7 4 6 7
6 7 4 6 7
5 1 2 3 1
</code></pre>