插入列
# -*- coding: utf-8 -*-
"""
Created on Mon Mar 09 11:21:02 2015
@author: myhaspl@myhaspl.com
"""
print u"python数据分析\n"
import pandas as pd
import numpy as np
#构造商品销量数据
mydf = pd.DataFrame({u‘商品地区编码‘:[1,1,3,2,4,3],u‘商品A‘:np.random.randint(0,1000,size=6),u‘商品B‘:np.random.randint(0,1000,size=6),u‘商品C‘:np.random.randint(0,1000,size=6)})
allsales=mydf.values[:,1]+mydf.values[:,2]+mydf.values[:,3]
#插入一列
mydf.insert(0,u‘总销量‘,pd.Series(allsales))
#按2个列名先排序,by后跟列名,表示按列名
mynewdf=mydf.sort_index(axis=0, by=[u‘商品地区编码‘,u‘总销量‘],ascending=[True,False])
print mynewdf
python数据分析
总销量 商品A 商品B 商品C 商品地区编码
0 1436 805 858 577 1
1 1370 422 606 763 1
3 397 445 41 354 2
5 851 737 629 219 3
2 815 682 133 679 3
4 749 999 521 224 4
>>>
下面也是一个例子
# -*- coding: utf-8 -*-
"""
Created on Mon Mar 09 11:21:02 2015
@author: myhaspl@myhaspl.com
"""
print u"python数据分析\n"
import pandas as pd
import numpy as np
#构造商品销量数据
mydf = pd.DataFrame({u‘商品地区编码‘:[1,1,3,2,4,3],u‘商品A‘:np.random.randint(0,1000,size=6),u‘商品B‘:np.random.randint(0,1000,size=6),u‘商品C‘:np.random.randint(0,1000,size=6)})
allsales=mydf.values[:,1]+mydf.values[:,2]+mydf.values[:,3]
#插入一列
mydf.insert(0,u‘总销量‘,pd.Series(allsales))
print mydf
#删除列
mynewdf=mydf.drop([u‘总销量‘],axis=1)
print mynewdf
#移动列
myb=mynewdf.pop(u‘商品B‘)
mynewdf.insert(2,u‘商品B‘,myb)
print mynewdf
结果如下:
python数据分析
总销量 商品A 商品B 商品C 商品地区编码
0 964 80 940 23 1
1 1188 373 450 737 1
2 1137 907 642 492 3
3 1001 646 952 47 2
4 899 526 19 876 4
5 1225 342 430 792 3
商品A 商品B 商品C 商品地区编码
0 80 940 23 1
1 373 450 737 1
2 907 642 492 3
3 646 952 47 2
4 526 19 876 4
5 342 430 792 3
商品A 商品C 商品B 商品地区编码
0 80 23 940 1
1 373 737 450 1
2 907 492 642 3
3 646 47 952 2
4 526 876 19 4
5 342 792 430 3
>>>
原文地址:http://blog.csdn.net/myhaspl/article/details/44172345