簡體   English   中英

如何基於另一個數據框設置列值

[英]How to set column values based on another dataframe

我正在一個有兩個數據輸入的項目中,我需要根據第二個DataFrame的索引將這些數據合並到一個DataFrame中。

我的第一個DataFrame如下所示:

    user        artist        song      timestamp
0  user_1       artist_1     song_1   2019-02-21 23:45  
1  user_1       artist_2     song_2   2019-02-21 23:49  
2  user_2       artist_2     song_3   2019-02-21 23:52

我的第二個DataFrame看起來像這樣:

                        artist       song
id                                                                        
9A9xGpfS2eZn3T4Z       artist_1     song_1
ke5EfOpcvTl0dtyR       artist_2     song_2
9YjNEwfS4kX7aHvg       artist_2     song_3

我正在尋找但無法獲得的結果如下:

    user        song_id                timestamp
0  user_1       9A9xGpfS2eZn3T4Z    2019-02-21 23:45  
1  user_1       ke5EfOpcvTl0dtyR    2019-02-21 23:49  
2  user_2       9YjNEwfS4kX7aHvg    2019-02-21 23:52

使用pandas內置函數有沒有辦法獲得此結果?

謝謝!

假設df1是您的第一個DataFrame,而df2您的第二個DataFrame。 然后,您可以使用:

new_df = df1.merge(df2, on=['artist', 'song'], how='left')

然后,您可以根據需要重命名和刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM