如何将数据帧中除第一列以外的所有列合并为一列并删除空行?蟒



我有一个包含多列的大型数据帧,并希望将除第一列以外的所有列中的所有值合并到一个新列中('New'(。然后删除'New'为空的行。

DataFrame如下所示(第'C'行为空(:

'Column1'  'Column2'  'Column3'  'Column4'  'Column5'  ...
0    A          a
1    B                     b
2    C
3    D          d
4    E                                e
5    F                                           f
6    G                     g
7    H                                h
...

我正在寻找的结果是这样的:

'Column1'  'New'
0    A          a
1    B          b
2    D          d
3    E          e
4    F          f
5    G          g
6    H          h
...

因此,第一列保持原样,所有其他列合并到列'New'中。由于第C行不包含任何值,因此将从最终DataFrame中删除该行。

实现这一目标的最有效方法是什么?

您可以使用sum

df['New']=df.iloc[:,1:].sum(1)

试试这个,

df['New'] = df.loc[:,1:].sum(1)
df1 = df[['column1','New']]
print df1[df1.New != '']

最新更新