gpt4 book ai didi

python - 如何检查两个变量是否引用同一个 Pandas 对象?

转载 作者:行者123 更新时间:2023-12-04 08:35:02 26 4
gpt4 key购买 nike

在此示例中,r1 和 r2 指的是同一个对象,但 assert(not r1 is r2) 返回 false,因为它们的 id 不同。但是,我预计它会失败,因为 r1 和 r2 指的是同一个对象!!

import pandas as pd
df = pd.DataFrame([0])
r1 = df.iloc[0]
r2 = df.iloc[0]
assert(not r1 is r2)
r1[0] = 1
assert(r1.equals(r2))
print(id(r1), id(r2))
>> 140547055257416 140547055258032

关于为什么会发生这种情况的解释可以在 array slicing in numpy 中找到。

最佳答案

您可以使用 np.may_share_memorynp.shares_memory这里

np.may_share_memory(r1, r2)
# True

关于python - 如何检查两个变量是否引用同一个 Pandas 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64841735/

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