我有一个熊猫数据帧 . 它看起来像这样:
pd.DataFrame(data=np.arange(1,10).reshape(3,3), index=['A', 'B', 'C'], columns=['A', 'B', 'C'])
但有100行和100列 .
我想压扁它,所以它看起来像这样:
pd.DataFrame({'row' : ['A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'], 'col' : ['A', 'B', 'C']*3, 'val' : np.arange(1,10)})
最有效的方法是什么?
谢谢,
插口
3 回答
这应该很快:-)
Option 1
效率并非100%确定,但最简单的方法是使用
df.melt
.Option 2
stack
的另一个简单选项 -要么,
Method #1
NumPy方法 -
样品运行 -
Method #2 : object dtype dataframe
如果你对
object
dtype数据帧没问题,这是另一种方式 -