Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中排列数据帧的列_Python_Python 3.x_Pandas_Pivot Table - Fatal编程技术网

如何在Python中排列数据帧的列

如何在Python中排列数据帧的列,python,python-3.x,pandas,pivot-table,Python,Python 3.x,Pandas,Pivot Table,我有一个带有值的数据框 Product Range Sold A 1-3 5 A 4-7 23 A 8-15 2 B 4-7 4 B 8-15 1 我需要输出为 Sold Product Range A 1-3 5

我有一个带有值的数据框

Product     Range    Sold
  A          1-3      5
  A          4-7      23
  A          8-15     2
  B          4-7      4
  B          8-15     1
我需要输出为

                      Sold
Product     Range    
  A          1-3      5
             4-7      23
             8-15     2
  B          4-7      4
             8-15     1

这可以通过任何内置函数或任何透视表函数来完成吗?

如果需要
多索引
请使用:

如果不是,并且第一级已排序,请与以下一起使用:


对于第二个选项,如果输入是[A,A,A,B,B,A,A],那么输出应该是[A,…B.A.]还是[A..B…]?@coldspeed-这是可能的,但是对于之前的所有答案,s似乎
df。set_index(['Product','Range')
是OP需要的。哦,太好了,用户接受了这个答案,这意味着这是一个重复。我不知道该怎么想。我正在删除我的答案,因为这是一个垃圾问题。我的同伴有点忙。第一层是排序的。第一层是排序的。
第一层是排序的。
?第一层可能是
[a,a,a,B,B,a]
df = df.set_index(['Product','Range'])
df['Product'] = df['Product'].mask(df['Product'].duplicated(), '')
print (df)
  Product Range  Sold
0       A   1-3     5
1           4-7    23
2          8-15     2
3       B   4-7     4
4          8-15     1