optimize a string query with pandas. large data

Viewed 1636

I have a dataframe data, which has close to 4 millions rows. It is a list of cities on the world. I need to query the city name as fast as possible.

I found out that one with 346ms via indexing the city name:

d2=data.set_index("city",inplace=False)

timeit d2.loc[['PARIS']]

1 loop, best of 3: 346 ms per loop

This is still much too slow. I wonder if with group-by I could achieve faster query (how to do such a query). Each city has around 10 rows in the dataframe (duplicate city). I searched several days and could not find a clear solution on the internet

thank you

3 Answers
Related