pandas快速定位某一列中存在某值的所有行,loc, at, ==對比
阿新 • • 發佈:2019-01-01
goodDiskName2016
from datetime import datetime
from time import time
直接方括號定位相等的列
start = time()
for disk in goodDiskName2016[:100]:
____ST4000DM000_2016_good_feature27[ST4000DM000_2016_good_feature27.serial_number==disk][features27[0]]
time()-start
消耗時間
82.93997383117676
直接loc定位相等的
start = time()
for disk in goodDiskName2016[:100 ]: ____ST4000DM000_2016_good_feature27.loc[ST4000DM000_2016_good_feature27.serial_number==disk][features27[0]]
time()-start
消耗時間:
82.4887466430664
先將這一列設定為index,然後通過loc查詢
b = ST4000DM000_2016_good_feature27.set_index('serial_number')
start = time()
for disk in goodDiskName2016[:100 ]:
b.loc[disk][features27[0]]
time()-start
消耗時間:
25.706212759017944
設定為index後用at定位
start = time()
for disk in goodDiskName2016[:100]:
b.at[disk,features27[0]]
time()-start
消耗時間:
25.67607021331787