基本上我想將資料框列與串列結合起來,并將其保留為串列。
df
a b
['2%', '70%'] ['2% W/V', '70% V/V']
['100%'] []
['5%', '60%'] ['5% W/V', '60% V/V']
我想擁有:
df
c
['2% W/V', '70% V/V']
['100%']
['5% W/V', '60% V/V']
我可以通過將 df['b']column 設定為 astr并使用來做到這一點combine_first:
df = df.astype({"b": str}).copy()
df['b'] = df['b'].replace('[]', np.nan)
df['c'] = df['b'].combine_first(df['a']).copy()
但我想將其保留為串列,以便可以將其與串列的其他列結合起來。我嘗試使用:
df['c'] = df['b'].combine_first(df['a']).copy()
沒有設定df['b']為 astr但它不起作用
uj5u.com熱心網友回復:
combine_first 函式不適用于空串列型別。
df['b'] = df['b'].apply(lambda x: x if x else np.nan)
df['c'] = df['b'].combine_first(df['a'])
它無需設定為 str 型別即可作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/490551.html
下一篇:SwiftUI表單部分分隔符
