使用“query”方法后,pandas.DataFrame 是否仍然排序?

问题描述 投票:0回答:1

我正在 python 中处理数据框

df
。我需要多次查询和排序结果,但在不同的列上:

for x in X:
   # query the dataframe and sort the result
   query_result = df.query(f"column_name == '{x}'").sort_values(by="other_column")
   # ... use query_result ...

我想知道是否可以分解排序操作,以使代码运行得更快,如下所示:

# First sort the dataframe
df.sort_values(by="other_column", inplace=True)

for x in X:
   # then query it
   query_result = df.query(f"column_name == '{x}'")
   # ... use query_result, assuming it is sorted by other_column ...

在第二个代码中,我能保证

query_result
已排序吗?

谢谢您的帮助

python pandas
1个回答
0
投票

query
不会更改行的顺序,因此如果您的输入已排序,则输出也会排序。

© www.soinside.com 2019 - 2024. All rights reserved.