Pythonで複数の列データを1つの列に結合する方法を教えてください。

複数の列のデータを単一列に結合する方法には、以下に示すように、いくつかあります。

  1. pandasのconcat()関数は、複数の列または複数のデータセットを行方向に連結できます。
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
new_column = pd.concat([df['A'], df['B'], df['C']], ignore_index=True)
  1. pandasの`melt()`関数を使うと、複数の列のデータを1つの列にマージでき、同時に他の列のデータも維持できます。
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
new_column = pd.melt(df)['value']
  1. NumPyライブラリのreshape()関数を使用します:複数の列を1次元の配列に置き換えます。
import numpy as np
array = np.array([[1, 4, 7], [2, 5, 8], [3, 6, 9]])
new_column = array.reshape(-1)
  1. リスト内包表記を用いることで、複数の列のデータを逐一抽出して、新しいリストにまとめることができます。
df = [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
new_column = [value for sublist in df for value in sublist]

各自のニーズに柔軟に対応でき、使い分けられるメソッドです。

bannerAds