import pandas as pd
df = pd.DataFrame({
'AAA': [120, 101, 106, 117, 114, 122],
'BBB': [115, 100, 110, 125, 123, 120],
'CCC': [109, 112, 125, 120, 116, 115],
'DDD': 'ABCDEFG'
}, index=[1, 2, 3, 4, 5, 6])
loc通过标签 在DataFrame中选取数据
print(df)
print("=======================")
# 获取一行数据
print(df.loc[1])
print(df)
print("=======================")
print(df.loc[[1, 3]])
print(df)
print("=======================")
print(df.loc[1:5])
当对行和列同时指定时,如果指定值不连续,则需要放在一个列表中;如果指定值是连续的,并采用切片的方式,则不需要加方括号。loc的参数中,左边表示行,右边表示列。
print(df)
print("=======================")
print(df.loc[2:4, ['AAA', 'CCC']])
print(df)
print("=======================")
print(df.loc[[1, 3], ['BBB', 'DDD']])
print(df)
print("=======================")
print(df.loc[:, 'BBB':])
loc通过位置 在DataFrame中选取数据
以获取第二行为例
print(df)
print("=======================")
print(df.iloc[1]) # 第2行
获取下标为0,2的行(第1、3行)
print(df)
print("=======================")
print(df.iloc[[0, 2]]) # 第1、3行。
获取下标为1到3的行(第2、3、4行)
print(df)
print("=======================")
print(df.iloc[1: 4]) # 第2、3、4行。
获取下标为1的行,及其后边的所有行
print(df)
print("=======================")
print(df.iloc[1:]) # 第二行及以后。
print("=======================")
print(df.iloc[:, [1, 3]])
print("=======================")
print(df.iloc[:, :2])
print("=======================")
print(df.iloc[[2, 5], [1, 3]])