我的代码如下:我从原始数据框中提取了一部分数据。我希望newdata框架的索引从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)
输出为:
Data
0 10
1 20
2 30
3 40
4 50
5 60
Data
3 40
4 50
Data
3 40
4 50
我期望b
数据帧的索引为:
Data
0 40
1 50
我按照jezrael
的建议尝试了以下代码,这是我可接受的答案,并且非常有效:
b.reset_index(inplace=True,drop=True)
print (b)
新的输出是:
Data
0 40
1 50
但是,我不需要索引列。
答案 0 :(得分:3)
您忘记分配回来并添加drop=True
参数以删除原始index
:
b = b.reset_index(drop=True)
print(b)
Data
0 40
1 50
或使用:
b.reset_index(inplace=True, drop=True)
print(b)
Data
0 40
1 50
如果不使用drop=True
,则使用原始索引值创建新列:
b = b.reset_index()
print(b)
index Data
0 3 40
1 4 50