我有一个带有多索引的 DataFrame,如下所示:
0 1 2
a 0 0.928295 0.828225 -0.612509
1 1.103340 -0.540640 -0.344500
2 -1.760918 -1.426488 -0.647610
3 -0.782976 0.359211 1.601602
4 0.334406 -0.508752 -0.611212
b 2 0.717163 0.902514 1.027191
3 0.296955 1.543040 -1.429113
4 -0.651468 0.665114 0.949849
c 0 0.195620 -0.240177 0.745310
1 1.244997 -0.817949 0.130422
2 0.288510 1.123550 0.211385
3 -1.060227 1.739789 2.186224
4 -0.109178 -1.645732 0.022480
d 3 0.021789 0.747183 0.614485
4 -1.074870 0.407974 -0.961013
What I want : array([1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0])
现在我想生成一个零向量,该向量具有此 DataFrame 的样本长度,并且仅在 level[1] 索引的第一个元素上有一个。例如,此处 df 的形状为 (15, 3)。因此,我想得到一个长度为 15 的向量,在 (a, 0), (b, 2), (c, 0), (d, 3) 和其他点应该有 1 和 0。我怎么能生成这样的向量?(如果可能,不要循环获取每个子向量,然后使用 np.concatenate())非常感谢!