10000
所需的输出:
ABC | NaN NaN NaN NaN PK KJ
PQR | NaN NaN RR SS NaN NaN
MNO | PO UI NaN NaN NaN NaN
尝试a = abc.combine_first(pqr) b = mno.combine_first(a)
答案 0 :(得分:0)
让我们看下面的示例数据框架,其中包含2组 3个相邻行:
C1 C2 C3 C4 C5 C6
ABC NaN NaN NaN NaN PK KJ
PQR NaN NaN RR SS NaN NaN
MNO PO UI NaN NaN NaN NaN
XXX AA NaN NaN NaN EE NaN
XX1 NaN BB NaN DD NaN FF1
XX2 NaN NaN CC NaN NaN FF2
然后继续进行以下操作:
定义一个“累加”组中内容的函数 行数:
def getFirstValue(grp):
return grp.reset_index().bfill(axis=0).iloc[0]
然后应用它:
df2 = df.groupby(np.arange(len(df.index)) // 3).apply(getFirstValue)
和一些“整理”操作:
df2.set_index('index', inplace=True)
df2.index.name = None
df2.columns.name = None
结果是:
C1 C2 C3 C4 C5 C6
ABC PO UI RR SS PK KJ
XXX AA BB CC DD EE FF1