1: 行数据的追加
先设置好原先的行和列:
>>> colname= ['idcard','name','sub']
>
>>> data1 = [['1','a1','rj'],['2','a2','jx'],['3','a3','gy']]
>>>> stu1 = pad.DataFrame(data1,columns = colname)
对这个列表进行行的一些整理性的操作:
:
>>> data2 = [['4','a4','rg'],['5','a5','gy']]
>>> stu2 = pad.DataFrame(data2,columns = colname)
>>> news= pad.concat([stu1,stu2],axis= 0)
>>> news
idcard name sub
0 1 a1 rj
1 2 a2 jx
2 3 a3 gy
0 4 a4 rg
1 5 a5 gy
如上图就实现了两个表之间的连接。
下面实现的是列连接:
首先创立一个需要连接的表:
#设置表行的信息:
>>> cardlocaded = ['id','lacaded','time','money']
>
>设置每行的数据:
>
>>> data3 = [['1','st','01','99'],['7','jy','02','99'],['3','st','01','99'],['5','jy','02','99']['4','st','01','99'],['4','jy','02','99'],['6','st','01','99'],['6','jy','02','99']]
创立一个表:
>>> card = pad.DataFrame( data3 , columns = cardlocaded)
>ok,表已经创建好了
>>> card
id lacaded time money
0 1 st 01 99
1 7 jy 02 99
2 3 st 01 99
3 5 jy 02 99
4 4 st 01 99
5 4 jy 02 99
6 6 st 01 99
7 6 jy 02 99
连接,用到的关键字是:pad.merge
pad.merge(表1,表2,连接方式,左关键字,右关键字)
连接方式决定了谁是主表,谁是附表
>>> pad.merge(news,card,how = 'left',left_on = 'idcard',right_on = 'id')
idcard name sub id lacaded time money
0 1 a1 rj 1 st 01 99
1 2 a2 jx NaN NaN NaN NaN
2 3 a3 gy 3 st 01 99
3 4 a4 rg 4 st 01 99
4 4 a4 rg 4 jy 02 99
5 5 a5 gy 5 jy 02 99
排序:
应该
stu3.sort_values(by ='成绩',ascending = False )
stu3.sort_values( 用于排序的列 , 排序方式false降序true 升序 ,inplace 是否修改原数据)
按成绩降序:
>>> stu3.sort_values(by ='成绩',ascending = False )
性别 年龄 身高 体重 省份 成绩 月生活费 课程兴趣 案例教学
序号
30 female 20 168 52 JiangSu 98 700 5 5
21 female 21 165 45 ShangHai 93 1200 5 5
23 male 21 169 80 GanSu 93 900 5 5
22 female 19 167 42 HuBei 89 800 5 5
29 female 20 161 51 GuangXi 80 1250 5 5
28 female 22 160 52 ShanXi 73 800 3 4
25 female 21 162 54 GanSu 68 1300 4 5
27 female 21 162 49 ShanDong 65 950 4 4
26 male 21 181 77 SiChuan 62 800 2 5
24 female 21 160 49 HeBei 59 1100 3 5
按照多个列排序:
>>> stu3.sort_values(by =['成绩','身高','体重'],ascending = False )
>先按成绩排序,若默写行列相同就按身高排序,若还想同,就按体重排序,(降序)
>
性别 年龄 身高 体重 省份 成绩 月生活费 课程兴趣 案例教学
序号
30 female 20 168 52 JiangSu 98 700 5 5
23 male 21 169 80 GanSu 93 900 5 5
21 female 21 165 45 ShangHai 93 1200 5 5
22 female 19 167 42 HuBei 89 800 5 5
29 female 20 161 51 GuangXi 80 1250 5 5
28 female 22 160 52 ShanXi 73 800 3 4
25 female 21 162 54 GanSu 68 1300 4 5
27 female 21 162 49 ShanDong 65 950 4 4
26 male 21 181 77 SiChuan 62 800 2 5
24 female 21 160 49 HeBei 59 1100 3 5
排名:
>>> stu3['成绩排名']=stu3['成绩'].rank(method = 'min',ascending = False)
>stu3这个列表新增加一个列成绩排名列,
>然后用rank排名,
>rank分别是(axis=1/0 , method = min/max/mean,ascending =false/true)
>
>axis:1为按列数据排名,0为按行数据排名 默认为1
>method:这个暂时不知道
>ascending:升序或者降序
>
>>> stu3
性别 年龄 身高 体重 省份 成绩 月生活费 课程兴趣 案例教学 成绩排名
序号
21 female 21 165 45 ShangHai 93 1200 5 5 2.0
22 female 19 167 42 HuBei 89 800 5 5 4.0
23 male 21 169 80 GanSu 93 900 5 5 2.0
24 female 21 160 49 HeBei 59 1100 3 5 10.0
25 female 21 162 54 GanSu 68 1300 4 5 7.0
26 male 21 181 77 SiChuan 62 800 2 5 9.0
27 female 21 162 49 ShanDong 65 950 4 4 8.0
28 female 22 160 52 ShanXi 73 800 3 4 6.0
29 female 20 161 51 GuangXi 80 1250 5 5 5.0
30 female 20 168 52 JiangSu 98 700 5 5 1.0
>>>