python pandas df.loc[]的典型用法

pandas中的df.loc[]主要是根据DataFrame的行标和列标进行数据的筛选的,如下图红框部分所示:在这里插入图片描述
其接受两个参数:行标和列标,当列标省略时,默认获取整行数据。两个参数都可以以字符,切片以及列表的形式传入。

>>> import pandas as pd
>>> import numpy as np
>>> df = pd.read_excel(r'D:/myExcel/1.xlsx', index_col='id')
>>> df
     name  score grade
id                    
a     bog     45     A
c   jiken     67     B
d     bob     23     A
b   jiken     34     B
f    lucy     98     A
e    tidy     75     B
# 指定行标'a'以及'f'行,第二个参数省略,则获取整行
>>> df.loc[['a', 'f']]
    name  score grade
id                   
a    bog     45     A
f   lucy     98     A

# 以切片形式传入,会按照df中的顺序获取
# 此处需要注意,并不是只获取'a', 'b'行
# 在df中'a', 'b'两行中还包含'c', 'd'行
# 会一并获取
>>> df.loc['a':'b']
     name  score grade
id                    
a     bog     45     A
c   jiken     67     B
d     bob     23     A
b   jiken     34     B

# 以切片传入行标,以列表形式传入列表
>>> df.loc['a':'f', ['name','grade']]
     name grade
id             
a     bog     A
c   jiken     B
d     bob     A
b   jiken     B
f    lucy     A

# 单个字符串获取指定数据
>>> df.loc['a' , 'name']
'bog'

# 获取整列数据
>>> df.loc[:, ['name','grade']]
     name grade
id             
a     bog     A
c   jiken     B
d     bob     A
b   jiken     B
f    lucy     A
e    tidy     B

哈哈,以上就是python小工具关于df.loc[]的基本用法。有兴趣欢迎关注公众号:python小工具。一起学习python和pandas
在这里插入图片描述