关于pandas的查询,深深的掉了一个大坑。
以此来记录一下

  1. 不知道元素在那一列,哪一行,先上一个坑。
t1 =time.clock()
for id in ids:#id为需要查找的元素
    for indexs in df1.index:#循环行
        for  i in range(len(df1.loc[indexs].values)):循环行内元素
            if(df1.loc[indexs].values[i] ==id):
            	print(indexs,i)#打印元素位置
                print(df1.loc[indexs].values[i])
print(time.clock()-t1) 

来看看时间。很无语,百度的一种方法,当时比较急,没有细想
pandas全表查询,根据条件返回。记录一次爬坑过程。

  1. 自己优化后,其实不要返回元素具体位置,只需要定位到某一行即可。
t1 =time.clock()
for index in df1.index:
    for id in ids:
        if id in list(df1.iloc[index]):
            print('ok')
#             print(list(df1.iloc[index]))
print(time.clock()-t1)

来看看时间。。。很无语,这个坑啊,哎。

pandas全表查询,根据条件返回。记录一次爬坑过程。

  1. 另外还有一种方法
t1 =time.clock()
for id in ids:
    for index in df1.index:
        if id in list(df1.iloc[index]):
            print('ok')
#             print(list(df1.iloc[index]))
print(time.clock()-t1)

pandas全表查询,根据条件返回。记录一次爬坑过程。
记录到这里,时刻提醒自己,一定要先想,在写。
----------记录一个菜鸟的学习历程。

相关文章:

  • 2021-11-21
  • 2022-03-02
  • 2021-11-27
  • 2022-02-27
  • 2021-07-23
  • 2021-11-09
  • 2022-12-23
猜你喜欢
  • 2021-08-28
  • 2022-12-23
  • 2022-02-09
  • 2022-01-02
  • 2021-09-29
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案