gpt4 book ai didi

python - 使用 pd.Index 与 df.loc 的优缺点是什么

转载 作者:行者123 更新时间:2023-12-05 04:36:31 25 4
gpt4 key购买 nike

使用 pd.Index 有什么区别?对比df.loc ?这实际上是同一件事吗?

idx = pd.Index(('a', 'b'))
df = pd.DataFrame({'a': [0, 1], 'b': [2, 3], 'c': [0, 5]})

print(df.loc[:, ('a', 'b')],)
print(df[idx])
<表类="s-表"><头><日> 一个b<正文>002113

最佳答案

如何loc 是首选方法是described in the documentation .使用多个切片会导致 SettingWithCopyWarning:

idx = ['a', 'b']
d = df[idx]
d.iloc[0,0] = 9
SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy

相比之下,使用 loc 不会触发 SettingWithCopyWarning:

idx = ['a', 'b']
d = df.loc[:,idx]
d.iloc[0,0] = 9

值得注意的是,loc 还允许您将特定轴作为参数传递:

df.loc(axis=1)[idx]

关于python - 使用 pd.Index 与 df.loc 的优缺点是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70818610/

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