操作数据帧中的数据时如何跳过 NaN 值

How to skip the NaN value when doing manipulation of data in a dataframe

我有一个数据框

dfx = pd.DataFrame({
'BRAND': ['A', 'B', 'C', 'D'],
'STATUT':['Trading', 'Trading', 'Trading', 'Trading'],
'ID_1': [str(144), str(205), str(123), np.NaN],
'ID_2': [str(173), np.NaN, '0123', str(124)],
'ID_3': ['0897', np.NaN, np.NaN,np.NaN],
})

我想要一个新列,将 ID 连接到一个新列中,只包含数字并跳过 NaN 值。每个值都用单引号括起来,用逗号分隔。如下图所示:

非常感谢

这是你想要的吗?

dfx['new'] = dfx[['ID_1', 'ID_2', 'ID_3']].apply(lambda x: "'" + "','".join(x.dropna()) + "'", axis=1)

  BRAND   STATUT ID_1  ID_2  ID_3                 new
0     A  Trading  144   173  0897  '144','173','0897'
1     B  Trading  205   NaN   NaN               '205'
2     C  Trading  123  0123   NaN        '123','0123'
3     D  Trading  NaN   124   NaN               '124'