loc 通过行、列的名称或标签来索引
iloc 通过行、列的索引位置来寻找数据
创建DataFrame表
import pandas as pd
import numpy as np
data = pd.DataFrame(np.arange(30).reshape((6,5)),columns=['A','B','C','D','E'])
data.to_csv('loc.csv')
print(data)
#输出
A B C D E
0 0 1 2 3 4
1 5 6 7 8 9
2 10 11 12 13 14
3 15 16 17 18 19
4 20 21 22 23 24
5 25 26 27 28 29
索引第二行的值,行标签是1
data1 = data.loc[1]
# data1 = data.iloc[1] 等价于iloc
# data1 = data.iloc[1,:] 等价于取第一行,所有的列值
print(data1)
#输出
A 5
B 6
C 7
D 8
E 9
读取第二列的值
data1 = data.loc[:, 'B']
print(data1)
data1 = data.iloc[:, 1]
print(data1)
读取某行某列
data1 = data.loc[1,'B']
print(data1)
data1 = data.iloc[1,1]
print(data1)
#输出
6
读取DataFrame的某个区域
data1 = data.loc[1:3,'B':'D']
print(data1)
data1 = data.iloc[1:4,1:4] #左开右闭
print(data1)
第B列中大于6的值
data1 = data.loc[data.B > 6 ]
print(data1)
data1 = data[data.B > 6 ]
print(data1)
#输出
B C D E
2 11 12 13 14
3 16 17 18 19
4 21 22 23 24
5 26 27 28 29
切片操作
data1 = data.loc[data.B >6, ['B','C','D','E'] ]
print(data1)
#输出
B C D E
2 11 12 13 14
3 16 17 18 19
4 21 22 23 24
5 26 27 28 29
取所有的行和列
data1 = data.loc[:, :]
print(data1)
data1 = data.iloc[:, :]
print(data1)
A B C D E
0 0 1 2 3 4
1 5 6 7 8 9
2 10 11 12 13 14
3 15 16 17 18 19
4 20 21 22 23 24
5 25 26 27 28 29
0 Comments