在Pandas数据帧保持索引ord中添加行

2024-03-29 05:36:40 发布

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

我有一个DataFrame,我想添加一些不需要的行。我找到了.loc方法,但这会在末尾添加值,而不是以排序的方式。例如

import numpy as np
import pandas as pd

dfi = pd.DataFrame(np.arange(6).reshape(3,2),columns=['A','B'])

>>> dfi
    A B
0   0 1
1   2 3
2   4 5
[3 rows x 2 columns]

通过.loc添加不存在的行:

^{pr2}$

到目前为止一切正常。但是,当试图添加另一行时会发生这种情况,索引小于最后一行:

dfi.loc[3,:] = 0
>>> dfi
    A B
0   0 1
1   2 3
2   4 5
5   0 0
3   0 0
[3 rows x 2 columns]

我希望它将索引为3的行放在2和{}之间。我每次都可以按索引对DataFrame排序,但这会花费太长时间。还有别的办法吗?在

{{My}实际的问题是DataFrame中添加行,这样结果就有一个有序的索引。在


Tags: columns方法importnumpydataframepandas排序as
1条回答
网友
1楼 · 发布于 2024-03-29 05:36:40

如果您的索引几乎是连续的,那么这里和那里只缺少一些值。我想你可以试试下面的方法

In [15]:

df=pd.DataFrame(np.zeros((100,2)), columns=['A', 'B'])
df['A']=np.nan
df['B']=np.nan
In [16]:

df.iloc[[0,1,2]]=pd.DataFrame({'A': [0,2,4,], 'B': [1,3,5]})
df.iloc[5]=[0,0]
df.iloc[3]=0
print df.dropna()
   A  B
0  0  1
1  2  3
2  4  5
3  0  0
5  0  0

[5 rows x 2 columns]

相关问题 更多 >