[英]Copy contents from one Dataframe to another based on column values in Pandas
[英]Pandas conditionally copy values from one column to another row
我想將 Date 列的值復制到 New_Date 列,但不僅復制到完全相同的行,我還想復制到具有相同 User_ID 值的每一行。
我嘗試了 groupby 然后復制,但是 groupby 使所有值都變成了列表,並且具有相同 user_id 的其他列可以在不同的行中具有不同的值,然后它搞砸了很多事情。
我也試過:
df['New_Date'] = df.apply(lambda x: x['Date'] if x['User_ID'] == x['User_ID'] else x['New_Date'], axis=1)
但它只將值復制到同一行,而將其他兩個留空。
和這個:
if (df['User_ID'] == df['User_ID']):
df['New_Date'] = np.where(df['New_Date'] == '', df['Date'], df['New_Date'])
沒有人完成我的意圖。
感謝您的幫助,謝謝!
嘗試這個:
df['New_Date'] = df.groupby('User_Id')['Date'].transform('first')
如果我理解正確,只需復制 Date 列,然后將.fillna()
與ffill=True
一起使用。 如果您將數據作為文本發布,我可以提供示例代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.