使用 Pandas 合併、連線和連線 DataFrame
在本教程中,我們將學習如何使用 **Pandas** 庫合併、連線和連線 **DataFrame**。我認為您已經熟悉 DataFrame 和 Pandas 庫。讓我們逐一看看這三種操作。
合併
我們有一個名為 **pandas.merge()** 的方法,它可以合併 DataFrame,類似於資料庫的連線操作。請按照以下步驟獲得所需的輸出。**merge** 方法使用公共列進行合併操作。
初始化 DataFrame。
使用三個引數呼叫 **pandas.merge()** 方法:**DataFrame**、**how**(定義資料庫連線操作)、**on**(DataFrame 的公共欄位)。
示例
讓我們看一個例子。
# importing the pandas library import pandas # creating dataframes dataframe_1 = pandas.DataFrame({"Common": ["A", "B", "C", "D", "E"], "Name": ["John", "Alice", "Emma", "Watson", "Harry"], "Age": [18, 19, 20, 21, 15]}) dataframe_2 = pandas.DataFrame({"Common": ["A", "B", "C", "D", "E"], "Sport": ["Cricket", "Football", "Table Tennis", "Badminton", "Chess"], "Movie": ["Jumanji", "Black Widow", "End Game", "Mr. Robot", "Matrix"]}) # merging using merge method # how = left or right or inner new_df = pandas.merge(dataframe_1, dataframe_2, how="left", on="Common") # printing the resultant dataframe print(new_df)
輸出
如果執行以上程式碼,您將得到以下結果。
Common Name Age Sport Movie 0 A John 18 Cricket Jumanji 1 B Alice 19 Football Black Widow 2 C Emma 20 Table Tennis End Game 3 D Watson 21 Badminton Mr. Robot 4 E Harry 15 Chess Matrix
連線
與 **merge** 方法類似,我們有一個名為 **dataframe.join(dataframe)** 的方法用於連線 DataFrame。讓我們看看將兩個 DataFrame 連線成一個的步驟。join 方法使用 DataFrame 的 **索引**。
初始化 DataFrame。
編寫語句 **dataframe_1.join**( **dataframe_2** ) 進行連線。
示例
讓我們用程式碼示例來嘗試一下。
# importing the pandas library import pandas # creating dataframes dataframe_1 = pandas.DataFrame({"Name": ["John", "Alice", "Emma", "Watson", "Harry"], "Age": [18, 19, 20, 21, 15]}, index = ["A", "B", "C", "D", "E"])dataframe_2 = pandas.DataFrame({"Sport": ["Cricket", "Football", "Table Tennis", "Badminton", "Chess"], "Movie": ["Jumanji", "Black Widow", "End Game", "Mr. Robot", "Matrix"]}, index = ["A", "B", "C", "D", "E"]) # joining new_df = dataframe_1.join(dataframe_2) # printing the new dataframe print(new_df)
如果執行以上程式,您將得到以下輸出
輸出
Name Age Sport Movie A John 18 Cricket Jumanji B Alice 19 Football Black Widow C Emma 20 Table Tennis End Game D Watson 21 Badminton Mr. Robot E Harry 15 Chess Matrix
連線
與 **merge 和 join** 方法類似,我們有一個名為 **pandas.concat(list->dataframes)** 的方法用於連線 DataFrame。讓我們看看連線 DataFrame 的步驟。連線將 DataFrame 組合成一個。
初始化 DataFrame。
使用 pandas.concat([df_1, df_2, ..]) 連線 DataFrame。列印結果。
示例
讓我們用程式碼示例來嘗試一下。
# importing the pandas library import pandas # creating dataframes dataframe_1 = pandas.DataFrame({"Name": ["John","Alice","Emma","Watson","Harry"], "Age": [18, 19, 20, 21, 15]}, index = ["A", "B", "C", "D", "E"]) dataframe_2 = pandas.DataFrame({"Name": ["Wick", "Robert", "Elliot", "Baby", "Cruise"], "Age": [22, 20, 45, 15, 42]}, index = ["F", "G", "H", "I", "J"]) # concatenating -> you can pass any number of new_df = pandas.concat([dataframe_1, dataframe_2]) # printing the new dataframe print(new_df)
輸出
如果執行以上程式,您將得到以下輸出。
Name Age A John 18 B Alice 19 C Emma 20 D Watson 21 E Harry 15 F Wick 22 G Robert 20 H Elliot 45 I Baby 15 J Cruise 42
結論
如果您在本教程中有任何疑問,請在評論區提出。