将空行附加到pandas中的Dataframe

Man*_*eka 6 python pandas

我想将空行(填充np.NaN)附加到pandas数据帧,目前只知道如何使用loc执行此操作

T = pd.DataFrame(index=['a', 'b', 'c'], data={'Col0': 0, 'Col1': 1})
T
   Col0  Col1
a     0     1
b     0     1
c     0     1

missing = ['d', 'e']
for m in missing:
    T.loc[m] = np.NaN

  Col0  Col1
a   0.0   1.0
b   0.0   1.0
c   0.0   1.0
d   NaN   NaN
e   NaN   NaN
Run Code Online (Sandbox Code Playgroud)

你知道更优雅的方式吗?

为什么不可能做类似的事情

T.loc[missing] = np.NaN
Run Code Online (Sandbox Code Playgroud)

谢谢!

EdC*_*ica 8

您可以reindex通过获取union当前索引和缺少的行值:

In [281]:    
T.reindex(T.index.union(missing))

Out[281]:
   Col0  Col1
a   0.0   1.0
b   0.0   1.0
c   0.0   1.0
d   NaN   NaN
e   NaN   NaN
Run Code Online (Sandbox Code Playgroud)

基本上loc寻找传入的标签,遗憾的是,使用放大设置仅适用于单行标签.

执行上述操作会更有效,这里我们使用union当前索引和缺失值,并将这些值用于reindexdf,其中行不存在NaN值插入.