栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

df.reindex()和df.set_index()方法在熊猫中的区别

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

df.reindex()和df.set_index()方法在熊猫中的区别

您可以通过一个简单的示例看到差异。让我们考虑以下数据帧:

df = pd.Dataframe({'a': [1, 2],'b': [3, 4]})print (df)   a  b0  1  31  2  4

索引则为0和1

如果

set_index
与列“ a”一起使用,则索引为1和2。如果这样做
df.set_index('a').loc[1,'b']
,则得到3。

现在,如果您要使用

reindex
相同的索引1和2(例如)
df.reindex([1,2])
,则在执行操作时将获得4.0
df.reindex([1,2]).loc[1,'b']

发生的事情是,

set_index
用(1,2)(“ a”列中的值)替换了先前的索引(0,1),而没有触及“ b”列中的值的顺序

df.set_index('a')   ba   1  32  4

同时

reindex
更改索引,但将与原始df中的索引关联的列“ b”中的值保留

df.reindex(df.a.values).drop('a',1) # equivalent to df.reindex(df.a.values).drop('a',1)     b1  4.02  NaN# drop('a',1) is just to not care about column a in my example

最后,

reindex
在不更改与每个索引相关联的行的值的情况下更改索引的顺序,同时
set_index
将使用列的值更改索引,而无需触及数据框中其他值的顺序



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/668344.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号