从数据帧中删除行后重置索引

2024-04-29 09:57:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将一个选项链拆分为一个单独的数据框,用于只调用列中的('C')的行,对吗

options_df
^{tb1}$

我尝试创建一个新的数据帧df来保存调用('C'):

df = options_df
df.drop(df[df["Right"] == 'P'].index)

这将返回数据帧df,但不幸的是,它保留了原始数据帧options_df的索引:

df
^{tb2}$

理想情况下,df的数据帧如下所示:

^{tb3}$

但事实并非如此

我已尝试通过重置索引进行更正,如下所示:

df.reset_index(drop=True)

但它也不起作用,并返回了整个原始数据帧,options_df:

df
^{tb1}$

我相信有一个简单的解决办法,但我就是想不出这个办法。谢谢你的帮助


Tags: 数据rightdf原始数据index情况事实drop
2条回答

重置索引时,需要添加inplace=True

df.reset_index(drop=True, inplace=True)

或者,将结果与您编写的行一起分配回df:

df = df.reset_index(drop=True)

您不需要使用.drop(),只需选择所需条件的行,然后通过reset_index(drop=True)重置索引,如下所示:

df = df[df["Right"] == 'C'].reset_index(drop=True)




print(df)


  Right
0     C
1     C
2     C

相关问题 更多 >