Python 将列堆叠在另一列下作为新的数据帧
我有999份收盘申报单组成的股票数据。我需要使用python将这些999列一列一列地堆叠在另一列下,即stock 1、stock 2、…、stock 999所有列都堆叠在另一列下。我想您需要的是: 请参见下面的示例:Python 将列堆叠在另一列下作为新的数据帧,python,database,python-3.x,pandas,jupyter-notebook,Python,Database,Python 3.x,Pandas,Jupyter Notebook,我有999份收盘申报单组成的股票数据。我需要使用python将这些999列一列一列地堆叠在另一列下,即stock 1、stock 2、…、stock 999所有列都堆叠在另一列下。我想您需要的是: 请参见下面的示例: In [330]: df Out[330]: col1 col2 rnk 0 a 5 1.5 1 a 5 1.5 2 b 10 1.0 3 b 15 2.0 4 c 20 1.0 In [329]
In [330]: df
Out[330]:
col1 col2 rnk
0 a 5 1.5
1 a 5 1.5
2 b 10 1.0
3 b 15 2.0
4 c 20 1.0
In [329]: df.unstack()
Out[329]:
col1 0 a
1 a
2 b
3 b
4 c
col2 0 5
1 5
2 10
3 15
4 20
rnk 0 1.5
1 1.5
2 1
3 2
4 1
dtype: object
所有3列(
col1、col2、rnk
)都堆叠在一起。如果这是您想要的,请告诉我。这已经奏效了,非常感谢!我曾尝试使用串联,但对于999列,这将是大量代码-这在一行中完成相同的事情-这太棒了@user9645302太好了,既然答案有帮助,请也投票吧。很抱歉,我现在投票了——它以前不允许我这么做。再次感谢