pandas 实现模糊检索

1  生成一个dataframe

>>> import pandas as pd                

  >>> df = pd.read_excel('students.xlsx', index_col='ID')
  >>> df
   name class
ID
1 张三 一班
2 张三 二班
3 李四 二班
4 王五 一班
5 麻六 三班
6 乔七 三班

2.1 函数loc定位cell

定位一个元素df.loc[‘行名’, '列名']

>>> df.loc[3,'name']
'李四'

# 注意:3是行名,而不是行号

2.2 函数iloc定位cell

df.iloc[行号, 列号]

>>> df.iloc[2, 0]
'李四'

3 通过.str.contains()实现模糊检索

比如,查找二班的张三

>>> df.loc[df['name'].str.contains('') & df['class'].str.contains('')]   
   name class                                                              
ID                                                                         
2    张三    二班                                                              

注意:如果中间的.str不用的话,就会出错,提示‘Series’数组没有‘contains'函数。

原文地址:https://www.cnblogs.com/cxyrj/p/12861897.html