这篇教程pandas 颠倒列顺序的两种解决方案写得很实用,希望能帮到您。 在数据预处理过程中可能需要将列的顺序颠倒,有两种方法。 import numpy as npimport pandas as pddf = pd.DataFrame(np.array(range(20)).reshape(4,5))print(df) 原始dataframe如下: 0 1 2 3 40 0 1 2 3 41 5 6 7 8 92 10 11 12 13 143 15 16 17 18 19 1. 方法一手动设置列名列表,应用在dataframe中(适合列名比较少的情况) 我们可以手动来更换列的顺序 cols = [4,3,2,1,0]df = df.ix[:,cols]print(df) 输出如下: 4 3 2 1 00 4 3 2 1 01 9 8 7 6 52 14 13 12 11 103 19 18 17 16 15 2. 方法二pandas提供颠倒列顺序的方式 可以看出当数据的列较多时,方法一会非常繁琐,pandas提供一种非常简便的方式来进行列顺序的颠倒。 df = df.ix[:, ::-1]print(df) 输出如下: 4 3 2 1 00 4 3 2 1 01 9 8 7 6 52 14 13 12 11 103 19 18 17 16 15 补充:Python列表排序与倒序 python学习笔记 列表排序 1、sort() 2、sorted() 3、reverse() sort()的使用letters = ['d','a','e','c','b']print letters['d','a','e','c','b']letters.sort()print letters['a','b','c','d','e'] sort()会自动按照字母顺序对字符串由小到大排序,如果数字就由小到大 注:sort()会修改原来的列表他是修改列表,而不是创建新的列表。 不应该 而应该 letters.sort()print letters 还可以用.sorted()函数# 得到一个有序的副本列表#而不影响原来列表的顺序old = ['d','a','e','c','b']new = sorted(old)print old['d','a','e','c','b']print new['a','b','c','d','e'] reverse的使用# 方法1 作为reverse()函数letters = ['d','a','e','c','b']letters.sort()print letters['a','b','c','d','e']letters.reverse()print letters['e','d','c','b','a']# 方法2 作为sort()函数参数letters = ['d','a','e','c','b']letter.sort(reverse = Ture) 以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。如有错误或未考虑完全的地方,望不吝赐教。 pandas调整列的顺序以及添加列的实现 python 利用百度API进行淘宝评论关键词提取 |