一日一技:Pandas如何对列排序?

 我们在工作中,经常用到 Excel,有时候,我们会使用 Pandas 生成 Excel。但生成的 Excel 列的顺序可能跟我们想要的不一样。

创新互联是一家集网站建设,凤泉企业网站建设,凤泉品牌网站建设,网站定制,凤泉网站建设报价,网络营销,网络优化,凤泉网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

例如:

 
 
 
 
  1. import pandas as pd 
  2. datas = [ 
  3.     {'id': 1, 'name': '王大', 'salary': 9999, 'work_time': 19}, 
  4.     {'id': 2, 'name': '李二', 'salary': 9999, 'work_time': 19}, 
  5.     {'id': 3, 'name': '张三', 'salary': 9999, 'work_time': 19}, 
  6.     {'id': 4, 'name': '朱四', 'salary': 9999, 'work_time': 19}, 
  7.     {'id': 5, 'name': '陈五', 'salary': 9999, 'work_time': 19}, 
  8.     {'id': 6, 'name': '老牛', 'salary': 9999, 'work_time': 19}, 
  9.  
  10. df = pd.DataFrame(datas) 
  11. df.to_excel('example.xlsx', index=False) 

运行效果如下图所示:

现在,我想在最终生成的 Excel 中,把work_time放到salary左边。这个时候,有两种方案:

方法1,把包含正确列表顺序的列表,传给 DataFrame 对象。

 
 
 
 
  1. df = df[['id', 'name', 'work_time', 'salary']] 

运行效果如下图所示:

方法2,使用.reindex()方法:

 
 
 
 
  1. df = df.reindex(columns=['id', 'name', 'work_time', 'salary'])  

运行效果如下图所示:


本文名称:一日一技:Pandas如何对列排序?
当前URL:http://gydahua.com/article/dpdpjos.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流