import pandas as pd #sort_values()函数是按照选中索引所在列的原素进行排序 df=pd.DataFrame({'A':[3,1,1,6,7],'B':['a','d','c','b','e'],'C':[123,343,122,978,459]}) print(df.sort_values('A')) # 结果 ''' A B C 1 1 d 343 2 1 c 122 0 3 a 123 3 6 b 978 4 7 e 459 ''' #如果多个索引,按照索引先后顺序,依次在上一次索引排序后再对重复排序的内部进行排序 print(df.sort_values(['A','B'])) # 结果 ''' A B C 1 1 e 343 2 1 t 122 0 3 a 123 3 6 o 978 4 7 r 459 ''' # set_index,rset_index:重新设置某一列作为索引/恢复某一列的索引 df=pd.DataFrame({'A':['a','a','e','a','e'],'B':[4,6,5,7,5],'C':[i for i in range(23,28)]}) print(df.set_index('A')) # 结果 ''' B C A a 4 23 a 6 24 e 5 25 a 7 26 e 5 27 ''' sets=df.set_index(['A','B']) print(sets) # 结果 ''' C A B a 4 23 6 24 e 5 25 a 7 26 e 5 27 ''' sets1=sets.reset_index(['A','B']) print(sets1) #结果 ''' A B C 0 a 4 23 1 a 6 24 2 e 5 25 3 a 7 26 4 e 5 27 ''' # cumsum:计算轴向元素累加和,返回由中间结果组成的数组 import numpy as np # 是2*2*3的数组 arr = np.array([[[1,2,3],[8,9,12]],[[1,2,4],[2,4,5]]]) print(arr.cumsum(0)) # 结果 ''' [[[ 1 2 3] [ 8 9 12]] [[ 2 4 7] [10 13 17]]] ''' print(arr.cumsum(1)) # 结果 ''' [[[ 1 2 3] [ 9 11 15]] [[ 1 2 4] [ 3 6 9]]] ''' print(arr.cumsum(2)) # 结果 ''' [[[ 1 3 6] [ 8 17 29]] [[ 1 3 7] [ 2 6 11]]] ''' # groupby df=pd.DataFrame({'A':['age','bwr','age','bwr','dfd'],'B':[1,2,1,5,6],'C':[345,23,345,35,33]}) # 分组后并没有进行计算,下面在'B'列求了平均 print(df.groupby('A')['B'].mean())
版权声明:本文为Chenftli原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。