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 版权协议,转载请附上原文出处链接和本声明。