Python – 使用 Numpy 獲取兩個 Pandas 資料幀共享的列


若要獲取兩個資料幀共享的列,請使用 intersect1d() 方法。此方法由 numpy 提供,因此您還需要使用 Pandas 匯入 Numpy。我們首先匯入所需的庫 −

import pandas as pd
import numpy as np

建立兩個資料幀 −

# creating dataframe1
dataFrame1 = pd.DataFrame({"Car": ['Bentley', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],"Cubic_Capacity": [2000, 1800, 1500, 2500, 2200, 3000],"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000],"Units_Sold": [ 100, 110, 150, 80, 200, 90]
})

# creating dataframe2
dataFrame2 = pd.DataFrame({"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],"Units_Sold": [ 100, 110, 150, 80, 200, 90]
})

使用 numpy 方法 intersect1d() 獲取公共列 −

res = np.intersect1d(dataFrame2.columns, dataFrame1.columns)

示例

以下是程式碼 −

import pandas as pd
import numpy as np

# creating dataframe1
dataFrame1 = pd.DataFrame({"Car": ['Bentley', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],"Cubic_Capacity": [2000, 1800, 1500, 2500, 2200, 3000],"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000],"Units_Sold": [ 100, 110, 150, 80, 200, 90]
})

print"Dataframe1...\n",dataFrame1

# creating dataframe2
dataFrame2 = pd.DataFrame({"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],"Units_Sold": [ 100, 110, 150, 80, 200, 90]
})

print"Dataframe2...\n",dataFrame2

# get common columns using intersect1d()
res = np.intersect1d(dataFrame2.columns, dataFrame1.columns)

print"\nCommon columns...\n",res

輸出

這將產生以下輸出 −

Dataframe1...
        Car   Cubic_Capacity   Reg_Price   Units_Sold
0   Bentley             2000        7000          100
1     Lexus             1800        1500          110
2     Tesla             1500        5000          150
3   Mustang             2500        8000           80
4  Mercedes             2200        9000          200
5    Jaguar             3000        6000           90
Dataframe2...
        Car   Units_Sold
0       BMW          100
1     Lexus          110
2     Tesla          150
3   Mustang           80
4  Mercedes          200
5    Jaguar           90

Common columns...
['Car' 'Units_Sold']

更新於: 2021-09-22

209 次瀏覽

開啟您的 職業

完成課程即可獲得認證

開始
廣告