gpt4 book ai didi

python - 在 Python 中访问数据帧的不同方式的性能

转载 作者:行者123 更新时间:2023-11-28 17:18:40 24 4
gpt4 key购买 nike

我刚刚在学习 Python Pandas Data Frame,我看到了

%timeit

然后我比较了几个Dataframe,以下是当数据集变大时访问高度相关的数据帧的不同方式的性能示例。

所以

%timeit data.ix[0,0]

10000 次循环,最好的 3 次:每次循环 159 微秒

%timeit data.loc[0,'nation']

10000 次循环,最好的 3 次:每次循环 158 微秒

%timeit data.iloc[0,0]

10000 次循环,最好的 3 次:每次循环 132 微秒

%timeit data.iat[0,0]

100000 次循环,最好的 3 次:每次循环 5.9 µs

您可以看到 data.iat[0,0] 与其他人有很大不同。

我的问题是为什么 .iat 与其他的不同,它是如何工作的?我们可以处理任何数据吗?

最佳答案

首先,不要使用 ix...它的用例比 iloc/lociat/And ix will be deprecated

其次,get_value 速度更快,但并不打算成为公共(public) API,尽管没有什么可以阻止您使用它。 See @jeff's comment


现在是答案的核心:

ilocloc 接受类似数组的输入... iatat 不接受。因此,如果您正在访问数据帧中的单个点,请务必使用 iatat。但是,如果您要使用 bool 数组或位置数组或索引值,则不能使用 iatat,因此请使用 ilocloc

关于python - 在 Python 中访问数据帧的不同方式的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42639309/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com