Python中的排序函数
列表排序
sort函数
sort函数:
list.sort(cmp=None,key=None,reverse=False)
对原列表进行排序,完成排序后,原列表变为有序列表。
sorted函数
sorted函数:
sorted(iterable, cmp=None, key=None, reverse=False)
cmp: 可以自定义比较参数。
对原列表进行排序,完成排序后,产生一个新的有序列表。
字典排序
sorted函数:sorted(iterable,key,reverse),返回的是list结构
对键进行排序
下面展示一些 内联代码片
。
sorted(dict)
sorted(dict.keys())
对值进行排序
下面展示一些 内联代码片
。
sorted(dict,key=lambda x: dict[x])
sorted(dict.items(),key=lambda x: x[1])
lambda函数
lambda 函数的语法只包含一个语句,表现形式如下:
lambda [arg1 [,arg2,…argn]]:expression
Series的排序
Pandas中通过调用sort_index()方法,可选择按行索引或者按列索引进行排序
Pandas中通过调用sort_values()方法,可选择按值(对应形参by)进行排序
下面展示一些 内联代码片
。
wy = pd.Series([1,-2,4,-4],index = ['c','b','a','d'])
print(wy)
print('排序后的Series:\n',wy.sort_index())
print('值排序后的Series:\n',wy.sort_values())
DataFrame排序
Pandas中通过调用sort_index()方法,可选择按行索引或者按列索引进行排序
Pandas中通过调用sort_values()方法,可选择按值(对应形参为by)进行排序
df = pd.DataFrame(np.random.randn(3,3),columns = ['a','b','c'],
index = ['app','win','mac'])
print(df)
df.apply(np.mean) #将函数套用到DataFrame的行或列上,行与列通过axis参数设置,默认是列(axis =0)
print(df)
df2.sort_values(by = 'a')
sort 与 sorted 区别:
sort 是 list 的一个方法,而 sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
目前所学涉及如上,欢迎补充……