Pandas Reindex - 填充缺失值的列

时间:2015-02-09 16:06:10

标签: python pandas

我尝试了几个这个主题的例子,但没有结果。我正在阅读DataFrame,例如:

Code,Counts
10006,5
10011,2
10012,26
10013,20
10014,17
10015,2
10018,2
10019,3

如何获得另一个DataFrame:

Code,Counts
10006,5
10007,NaN
10008,NaN
...
10011,2
10012,26
10013,20
10014,17
10015,2
10016,NaN
10017,NaN
10018,2
10019,3

基本上填写'代码'的缺失值。柱?我尝试了df.reindex()方法,但我无法弄清楚它是如何工作的。非常感谢。

1 个答案:

答案 0 :(得分:2)

我将索引设置为您'代码'列,然后reindex根据您当前的索引传入一个新数组,arange接受一个开始和停止参数(您需要在结尾添加1),然后reset_index这假设你的代码'值已经排序:

In [21]:

df.set_index('Code', inplace=True)
df = df.reindex(index = np.arange(df.index[0], df.index[-1] + 1)).reset_index()
df
Out[21]:
     Code  Counts
0   10006       5
1   10007     NaN
2   10008     NaN
3   10009     NaN
4   10010     NaN
5   10011       2
6   10012      26
7   10013      20
8   10014      17
9   10015       2
10  10016     NaN
11  10017     NaN
12  10018       2
13  10019       3