Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python - 열을 따라 두 개 이상의 Pandas DataFrame을 연결하는 방법은 무엇입니까?

<시간/>

두 개 이상의 Pandas DataFrame을 연결하려면 concat() 메서드를 사용하세요. 설정 축 =1 매개변수 열을 따라 연결합니다. 먼저 필요한 라이브러리를 가져옵니다 -

pandas를 pd로 가져오기

1 st 를 만들어 보겠습니다. 데이터프레임 -

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

2 nd 를 만들어 보겠습니다. 데이터프레임 -

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

세 번째 세 번째 를 만들어 보겠습니다. 데이터프레임 -

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))

예시

다음은 코드입니다 -

pandas를 pd로 가져오기# Create DataFrame1dataFrame1 =pd.DataFrame( { "Col1":[10, 20, 30],"Col2":[40, 50, 60],"Col3":[70, 80, 90 ], }, index=[0, 1, 2],)# DataFrame1print"DataFrame1...\n",dataFrame1# 생성 DataFrame2dataFrame2 =pd.DataFrame( { "Col1":[100, 110, 120],"Col2 ":[130, 140, 150],"Col3":[160, 170, 180], }, index=[3, 4, 5],)# DataFrame2print"DataFrame2...\n",dataFrame2dataFrame3 =pd. DataFrame( { "Col1":[200, 210, 220],"Col2":[230, 240, 250],"Col3":[260, 270, 280], }, index=[6, 7, 8] ,)# DataFrame3print"DataFrame3...\n",dataFrame3# 3개 이상의 데이터 프레임 연결# 열을 따라 연결을 위해 "axis=1" 설정res =[dataFrame1, dataFrame2, dataFrame3]print"\n 모든 3개의 DataFrames 연결(함께 열)...\n", pd.concat(res, axis=1)

출력

이것은 다음과 같은 출력을 생성합니다 -

0 Colating 8 DataFrame1... Col1 Col2 Col30 10 40 701 20 50 802 30 60 90DataFrame2... Col1 Col2 Col33 100 130 1604 110 140 1705 120 150 1802DataFrame3... 열을 따라 3개의 데이터 프레임... Col1 Col2 Col3 Col1 Col2 Col3 Col1 Col2 Col30 10.0 40.0 70.0 NaN NaN NaN NaN NaN NaN1 20.0 50.0 80.0 NaN NaN NaN NaN NaN NaN 30.9 60.0 130.0 160.0 Nan Nan Nan4 Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan5 Nan Nan Nan Nan Nan5 Nan Nan Nan Nan Nan5 Nan Nan Nan Nan Nan Nan Nan6 Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan Nan 210.0 240.0 270.08 난 Nan Nan Nan Nan Nan 220.0 250.0 280.0