当前位置:   article > 正文

pandas 使用loc和iloc读取行数据或列数据_df1 = df1.iloc[:, :]

df1 = df1.iloc[:, :]


创建一个DataFrame

data = {'name':['张三', '李四', '王五', '赵六'],'age':[20, 21, 22, 23], 'gender': [0, 1, 1, 1], 'stature': [165, 189, 178, 160], 'year': [2000, 2002, 2003, 1993]}
df = pd.DataFrame(data)
print (df)
  • 1
  • 2
  • 3

运行结果如下:

  name  age  gender  stature  year
0   张三   20       0      165  2000
1   李四   21       1      189  2002
2   王五   22       1      178  2003
3   赵六   23       1      160  1993
  • 1
  • 2
  • 3
  • 4
  • 5

一、 使用loc方法读取数据

loc:按照标签值(列明和行索引取值)来访问,支持单值访问或切片查询,还可以指定返回列变量

1.1 读取某行某列的值

# 1. 读取第二行,第二行的名称是"1"
df1= df.loc[1]

'''
name         李四
age          21
gender        1
stature     189
year       2002
Name: 1, dtype: object
'''

# 2. 读取第二列,第二列的列名是 age
df2 = df.loc[ : ,"age"]
'''
0    20
1    21
2    22
3    23
Name: age, dtype: int64
'''

# 3. 同时读取某个值,读取行号为2,列名为name的值
df3 = df.loc[2, 'name']
# '王五'
  • 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

1.2 读取某个区域

# 读取第1行到第2行,age列到 stature列这个区域内的值
df4 = df.loc[ 1:2, "age":"stature"]
df4
  • 1
  • 2
  • 3

在这里插入图片描述

1.3 按照条件筛选

单条件筛选

# 单个条件筛选:读取年龄大于20的人
df5 = df.loc[ df.age > 20]
  • 1
  • 2

在这里插入图片描述

多条件筛选

# 多个条件筛选:读取年龄大于20的人并且stature大于180的人
df5 = df.loc[(df.age > 20) & (df.stature> 180)]
df5
  • 1
  • 2
  • 3

在这里插入图片描述
条件+切片

# 读取年龄大于20的人,且只显示name和stature
df5 = df.loc[ df.age > 20, ['name', 'stature']]
df5
  • 1
  • 2
  • 3

在这里插入图片描述

二. 使用iloc方法读取数据

iloc:通过行索引和列索引位置(数字索引)来访问,支持单值访问或切片查询

2.1 读取某行某列的值

# 1. 读取第二行的值,第一行从0开始
df1= df.iloc[1]

'''
name         李四
age          21
gender        1
stature     189
year       2002
Name: 1, dtype: object
'''

# 2. 读取第二列,第一列从0开始
df2 = df.iloc[ : , 1]
'''
0    20
1    21
2    22
3    23
Name: age, dtype: int64
'''

# 3. 同时读取某个值,读取第3行,第1列的值。第一列从0开始
df3 = df.iloc[2, 0]
# '王五'
  • 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

2.2 读取某个区域的数据


# 读取第2、3行,第3、4列
df1 = df.iloc[1:3, 2:4]
df1 
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/1002566
推荐阅读
相关标签
  

闽ICP备14008679号