Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python Pandas –DataFrameを1対多の関係でマージします


Pandas DataFrameをマージするには、 merge()を使用します 働き。 1対多の関係検証」の下で設定することにより、両方のデータフレームに実装されます ” merge()関数のパラメータ、つまり-

validate = “one-to-many”
or
validate = “1:m”

1対多の関係は、マージキーが左側のデータセットで一意であるかどうかを確認します。

まず、1番目の st を作成しましょう DataFrame-

dataFrame1 = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],"Units": [100, 150, 110, 80, 110, 90]
   }
)

それでは、2番目の を作成しましょう DataFrame-

dataFrame2 = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]
   }
)

以下はコードです-

import pandas as pd

# Create DataFrame1
dataFrame1 = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],"Units": [100, 150, 110, 80, 110, 90]
   }
)

print("DataFrame1 ...\n",dataFrame1)

# Create DataFrame2
dataFrame2 = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000]

   }
)

print("\nDataFrame2 ...\n",dataFrame2)

# merge DataFrames with "one-to-many" in "validate" parameter
mergedRes = pd.merge(dataFrame1, dataFrame2, validate ="one_to_many")
print("\nMerged dataframe with one-to-many relation...\n", mergedRes)

出力

これにより、次の出力が生成されます-

DataFrame1 ...
       Car   Units
0      BMW     100
1    Lexus     150
2     Audi     110
3  Mustang      80
4  Bentley     110
5   Jaguar      90
DataFrame2 ...
        Car   Reg_Price
0       BMW        7000
1     Lexus        1500
2     Tesla        5000
3   Mustang        8000
4  Mercedes        9000
5    Jaguar        6000
Merged dataframe with one-to-many realtion ...
       Car   Units   Reg_Price
0      BMW     100        7000
1    Lexus     150        1500
2  Mustang      80        8000
3   Jaguar      90        6000

  1. Python-Matplotlibを使用してPandasデータフレームのヒストグラムをプロットしますか?

    ヒストグラムは、データの分布を表したものです。ヒストグラムをプロットするには、hist()メソッドを使用します。最初に、両方のライブラリをインポートします- import pandas as pd import matplotlib.pyplot as plt 2列のデータフレームを作成する- dataFrame = pd.DataFrame({    "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', '

  2. PythonPandas-DataFrame内のすべてのNaN要素を0に置き換えます

    NaN値を置き換えるには、fillna()メソッドを使用します。以下が、いくつかのNaN値を使用してMicrosoftExcelで開いたCSVファイルであるとしましょう- まず、必要なライブラリをインポートします- import pandas as pd CSVファイルからPandasDataFrameにデータをロードする- dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesData.csv") fillna()メソッドを使用してNaN値を0に置き換えます- dataFrame.fillna(0)