pandas库函数。
操作元素的函数
pandas是已Numpy为基础,并对他的很多功能进行了扩展,以用来操作新数据机构Series和DataFrame。通用函数(ufunc,universal function)就是通过扩展得到的功能,这类函数能够对数据结构中的元素进行操作,因此特别有用。乳痈NumPy中的np.sqrt()函数就能计算DataFrame对象没一个元素的平方根。
按行或者列执行操作的行数
除了通用函数,我们还可以自己定义函数。需要注意的是这些函数对一维数组进行运算返回一个数值结果。例如我们可以定义一个计算数组元素取值范围的lambda函数,然后用apply()函数可以在DataFrame对象上调用刚定义的函数,调用后每一列的运算结果最为一个值返回
如果想用函数对行进行处理而不是列,需将axis选项设置为1
apply()函数并不一定要返回一个标量,他可以返回一个Series对象,因而可以借助他同事执行多个函数。每调用一次函数们就会有两个或者两个以上的返回结果,我们可以定义下面这样一个函数
统计函数
数组的大多数统计函数对DataFrame对象依旧有效,因此没有必要使用apply()函数,例如sum()和mean()函数分别用来计算DataFrame对象元素之和及它们的均值。
describe()函数可以计算多个统计量。
排序和排位次
另外一种使用索引机制的基础操作是排序(sorting)。对数据进行排序通常为必要操作,因此简化他的实现非常重要。pandas的sort_index()函数返回一个跟原对象元素相同但排序不同的新对象。sort_index()默认对索引进行圣墟排序,如要使用降序排序,择婿指定ascending选项,将其值置为False。
对于DataFrame对象,可分别对两条周的任意一条进行排序。如果要根据索引对行进行排序,可依旧使用sort_index()函数,不用指定参数,如果要按列进行排序,则要指定axis选项,其值为1
如果要对数据结构的元素进行排序,那么Series和DataFrame都可以用sort_values()函数,只不过对DataFrame对象的元素进行排序时要用by选项指定需要根据那一列进行排序。
Series对象排序,使用sort_values()函数;DataFrame对象排序,使用前面用过的sort_index()函数,只不过要用by选项指定需要根据那一列进行排序。
排位次操作(ranking)跟排序操作紧密相关,该操作为序列的每个元素安排一个位次(初始值为1,依次加1),位次越靠前,所使用的数值越小
我们可以根据数据在数据结构中的顺序(没有进行排序操作)作为它的位次,只需要使用method选项的值为‘first’即可
默认位次使用升序,要按照降序排序,就把ascending选项的值置为False