复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149import numpy as np import pandas as pd from pandas import * from numpy import * data=DataFrame(np.arange(16).reshape(4,4),index=list("ABCD"),columns=list("wxyz")) print(data) # w x y z #A 0 1 2 3 #B 4 5 6 7 #C 8 9 10 11 #D 12 13 14 15 #取前两行数据 print(data[0:2]) print(type(data[0:2])) # w x y z #A 0 1 2 3 #B 4 5 6 7 #<class 'pandas.core.frame.DataFrame'> #取行数据iloc,loc;取列数据 print(data.loc["A"]) print(data.iloc[0]) #w 0 #x 1 #y 2 #z 3 #Name: A, dtype: int32 #w 0 #x 1 #y 2 #z 3 #Name: A, dtype: int32 print(data["w"]) print(data.loc[:,"w"]) #A 0 #B 4 #C 8 #D 12 #Name: w, dtype: int32 #A 0 #B 4 #C 8 #D 12 #Name: w, dtype: int32 #获取dataframe行列数 print(len(data)) print(data.columns.size) #4 #4 #获取行列名 print(data.columns) print(data.index) #Index(['w', 'x', 'y', 'z'], dtype='object') #Index(['A', 'B', 'C', 'D'], dtype='object') #数据切片 print(data.loc[:,["x","z"]]) print(data.loc[["A","B"],"x":"z"])#行列标签前后都闭合 # x z #A 1 3 #B 5 7 #C 9 11 #D 13 15 # x y z #A 1 2 3 #B 5 6 7 print(data.iloc[1:3,1:3]) print(data.iloc[[0,2],[0,2]]) # x y #B 5 6 #C 9 10 # w y #A 0 2 #C 8 10 #特殊条件选取行列 print(data[data>2]) # w x y z #A NaN NaN NaN 3 #B 4.0 5.0 6.0 7 #C 8.0 9.0 10.0 11 #D 12.0 13.0 14.0 15 print(data[data.w>5]) # w x y z #C 8 9 10 11 #D 12 13 14 15 print(data[data.w==data.w.max()]) # w x y z #D 12 13 14 15 print(data[data.w.isin([4,8])]) # w x y z #B 4 5 6 7 #C 8 9 10 11 #对默认每一列数据求平均值 print(data.mean()) print(data["x"].value_counts()) #w 6.0 #x 7.0 #y 8.0 #z 9.0 #dtype: float64 #13 1 #5 1 #9 1 #1 1 #Name: x, dtype: int64 print(data.describe()) # w x y z #count 4.000000 4.000000 4.000000 4.000000 #mean 6.000000 7.000000 8.000000 9.000000 #std 5.163978 5.163978 5.163978 5.163978 #min 0.000000 1.000000 2.000000 3.000000 #25% 3.000000 4.000000 5.000000 6.000000 #50% 6.000000 7.000000 8.000000 9.000000 #75% 9.000000 10.000000 11.000000 12.000000 #max 12.000000 13.000000 14.000000 15.000000 #给dataframe重新排序 data.sort_values(by="w",ascending=False,inplace=True) print(data) # w x y z #D 12 13 14 15 #C 8 9 10 11 #B 4 5 6 7 #A 0 1 2 3 data.sort_values(by="D",axis=1,ascending=False,inplace=True) print(data) # z y x w #D 15 14 13 12 #C 11 10 9 8 #B 7 6 5 4 #A 3 2 1 0 new_index=list("ABCD") print(data.reindex(new_index)) # z y x w #A 3 2 1 0 #B 7 6 5 4 #C 11 10 9 8 #D 15 14 13 12
参考:https://www.jb51.net/article/141725.htm
以上,记录本人学习过程
最后
以上就是结实母鸡最近收集整理的关于dataframe常用操作:取行列,切片,排序的全部内容,更多相关dataframe常用操作内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复