panda根据另一列中的值派生列中缺少的值

  • 本文关键字:派生 一列 panda python pandas
  • 更新时间 :
  • 英文 :

box type len
abc 20HE nan
def 20GE 20
ghi 40HC 40
jkl 20HE 20
mno 40HC nan
pqr 40GE nan
stu 20GC 20

"len"中缺失的值可以替换为字符串列"type",方法是将"type"中值的前两个字符转换为int值20或40。

期望输出:

box type len
abc 20HE 20
def 20GE 20
ghi 40HC 40
jkl 20HE 20
mno 40HC 40
pqr 40GE 40
stu 20GC 20

您可以在这里使用numpy的np.where函数,请尝试以下操作。其中df是您的数据帧。

df['len'] = np.where(df['len'].isnull(),df['type'].str[:2],df['len'])
df


第二个解决方案:使用.where函数。

df['len'] = df['len'].where(df['len'].notnull(),df['type'].str[:2])
df

最新更新