Python Pandas DataFrame 从 0 开始重新索引某个数据

Msq*_*are 4 dataframe python-3.x pandas

我的代码如下:我从原始数据框中提取了部分数据。我希望新数据帧的索引从 0 开始。奇怪的是,它带有旧索引。我尝试过reset_index(),但没有成功。有任何输入吗?

a = [10,20,30,40,50,60]
a = pd.DataFrame(a,columns=['Data'])
print(a)
b = pd.DataFrame(a['Data'][3:5])
print(b)
b.reset_index()
print(b)
Run Code Online (Sandbox Code Playgroud)

输出是:

      Data
0    10
1    20
2    30
3    40
4    50
5    60
   Data
3    40
4    50
   Data
3    40
4    50
Run Code Online (Sandbox Code Playgroud)

我期望b数据帧的索引如下:

Data
0    40
1    50
Run Code Online (Sandbox Code Playgroud)

我按照建议尝试了以下代码,jezrael这是我接受的答案,它完美地工作了:

b.reset_index(inplace=True,drop=True)
print (b)
Run Code Online (Sandbox Code Playgroud)

新的输出是:

    Data
0    40
1    50
Run Code Online (Sandbox Code Playgroud)

但是,我不需要索引列。

jez*_*ael 8

您忘记分配回来并添加drop=True参数以删除原始内容index

b = b.reset_index(drop=True)
print(b)
   Data
0    40
1    50
Run Code Online (Sandbox Code Playgroud)

或者使用:

b.reset_index(inplace=True, drop=True)
print(b)
   Data
0    40
1    50
Run Code Online (Sandbox Code Playgroud)

如果不使用,drop=True则使用原始索引值创建新列:

b = b.reset_index()
print(b)
   index  Data
0      3    40
1      4    50
Run Code Online (Sandbox Code Playgroud)