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'函数。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM