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

Python-列に沿って2つ以上のパンダデータフレームを連結する方法は?


3つ以上のPandasDataFrameを連結するには、concat()メソッドを使用します。 を設定します axis =1としてのパラメータ 列に沿って連結します。まず、必要なライブラリをインポートします-

import pandas as pd

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

dataFrame1 = pd.DataFrame(
   {
      "Col1": [10, 20, 30],"Col2": [40, 50, 60],"Col3": [70, 80, 90],
   },
   index=[0, 1, 2],
)

2番目の nd を作成しましょう DataFrame-

dataFrame2 = pd.DataFrame(
   {
      "Col1": [100, 110, 120],"Col2": [130, 140, 150],"Col3": [160, 170, 180],
   },
   index=[3, 4, 5],
)

3番目の rd を作成しましょう DataFrame-

dataFrame3 = pd.DataFrame(
   {
      "Col1": [200, 210, 220],"Col2": [230, 240, 250],"Col3": [260, 270, 280],
   },
   index=[6, 7, 8],
)

concat()を使用して3つのDataFrameをすべて連結し、「axis=1」を設定して列に沿って連結します-

res = [dataFrame1, dataFrame2, dataFrame3]
pd.concat(res, axis=1))

以下はコードです-

import pandas as pd

# Create DataFrame1
dataFrame1 = pd.DataFrame(
   {
      "Col1": [10, 20, 30],"Col2": [40, 50, 60],"Col3": [70, 80, 90],
   },
   index=[0, 1, 2],
)

# DataFrame1
print"DataFrame1...\n",dataFrame1

# Create DataFrame2
dataFrame2 = pd.DataFrame(
   {
      "Col1": [100, 110, 120],"Col2": [130, 140, 150],"Col3": [160, 170, 180],
   },
   index=[3, 4, 5],
)

# DataFrame2
print"DataFrame2...\n",dataFrame2

dataFrame3 = pd.DataFrame(
   {
      "Col1": [200, 210, 220],"Col2": [230, 240, 250],"Col3": [260, 270, 280],
   },
   index=[6, 7, 8],
)

# DataFrame3
print"DataFrame3...\n",dataFrame3

# concatenating more than 3 dataframes
# set "axis=1" for concatenation along columns
res = [dataFrame1, dataFrame2, dataFrame3]
print"\n Concatenating all the 3 DataFrames (along columns)...\n", pd.concat(res, axis=1)

出力

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

DataFrame1...
    Col1   Col2   Col3
0    10     40     70
1    20     50     80
2    30     60     90
DataFrame2...
    Col1   Col2   Col3
3   100    130    160
4   110    140    170
5   120    150    180
DataFrame3...
    Col1   Col2   Col3
6   200    230    260
7   210    240    270
8   220    250    280

Concatenating all the 3 DataFrames (along columns)...
   Col1   Col2   Col3   Col1   Col2   Col3   Col1   Col2   Col3
0  10.0   40.0   70.0   NaN    NaN    NaN    NaN    NaN    NaN
1  20.0   50.0   80.0   NaN    NaN    NaN    NaN    NaN    NaN
2  30.0   60.0   90.0   NaN    NaN    NaN    NaN    NaN    NaN
3  NaN    NaN    NaN    100.0  130.0  160.0  NaN    NaN    NaN
4  NaN    NaN    NaN    110.0  140.0  170.0  NaN    NaN    NaN
5  NaN    NaN    NaN    120.0  150.0  180.0  NaN    NaN    NaN
6  NaN    NaN    NaN    NaN    NaN    NaN    200.0  230.0  260.0
7  NaN    NaN    NaN    NaN    NaN    NaN    210.0  240.0  270.0
8  NaN    NaN    NaN    NaN    NaN    NaN    220.0  250.0  280.0

  1. Pythonで2つの辞書を比較するにはどうすればよいですか?

    Pythonのdictもクラスです。これらは__eq__methodがオーバーライドされているため、==演算子を使用して、2つの辞書が等しいかどうかを確認できます。 例 a = {'foo': 10, 'bar': 150} b = {'foo': 10, 'bar': 150} print(a == b) 出力 これにより出力が得られます- True 2つの辞書の共有アイテムのリストが必要な場合は、セットとそれらの&演算子を使用して取得できます。 例 a = {'foo': 10, 'bar'

  2. Pythonで2つのタプルを比較するにはどうすればよいですか?

    タプルは位置ごとに比較されます。最初のタプルの最初のアイテムが2番目のタプルの最初のアイテムと比較されます。それらが等しくない場合、これは比較の結果です。そうでない場合は、2番目の項目が考慮され、次に3番目の項目が考慮されます。 例 >>> a = (1, 2, 3) >>> b = (1, 2, 5) >>> a < b True 類似した異なる要素を考慮に入れた別のタイプの比較があります。これは、セットを使用して実行できます。セットはタプルを取り、一意の値のみを取ります。次に、交差のように機能する&操作を実行して、タプルから共