Pandas DataFrame DataFrame.append() 함수
-
pandas.DataFrame.append()
메서드 구문: -
예제 코드:
pandas.DataFrame.append()
를 사용하여 두 개의 DataFrame 추가 -
예제 코드:
pandas.DataFrame.append()
를 사용하여 DataFrames 추가 및 색인 무시 -
DataFrame.append()
메서드에서verify_integrity=True
설정 - 예제 코드: 다른 열로 데이터 프레임 추가
pandas.DataFrame.append()
은 DataFrame을 입력으로 취하고 행을 다음과 병합합니다. 메서드를 호출하는 DataFrame의 행은 마지막으로 새 DataFrame을 반환합니다. 입력 DataFrame의 열이 호출자 DataFrame에 없으면 해당 열이 DataFrame에 추가되고 누락 된 값은 NaN
으로 설정됩니다.
pandas.DataFrame.append()
메서드 구문:
DataFrame.append(other, ignore_index=False, verify_integrity=False, sort=False)
매개 변수
other |
입력 DataFrame 또는 Series, 또는 행이 추가 될 Python Dictionary와 유사한 |
ignore_index |
부울. True 인 경우 원래 DataFrame의 색인이 무시됩니다. 기본값은 색인이 사용됨을 의미하는 False 입니다. |
verify_integrity |
부울. True 인 경우 중복 색인 생성시 ValueError 를 발생시킵니다. 기본값은 False 입니다. |
sort |
부울. 열이 정렬되지 않은 경우 원본과 다른 DataFrame을 정렬합니다. |
예제 코드: pandas.DataFrame.append()
를 사용하여 두 개의 DataFrame 추가
import pandas as pd
names_1=['Hisila', 'Brian','Zeppy']
salary_1=[23,30,21]
names_2=['Ram','Shyam',"Hari"]
salary_2=[22,23,31]
df_1 = pd.DataFrame({'Name': names_1, 'Salary': salary_1})
df_2 = pd.DataFrame({'Name': names_2, 'Salary': salary_2})
merged_df = df_1.append(df_2)
print(merged_df)
출력:
Name Salary
0 Hisila 23
1 Brian 30
2 Zeppy 21
Name Salary
0 Ram 22
1 Shyam 23
2 Hari 31
Name Salary
0 Hisila 23
1 Brian 30
2 Zeppy 21
0 Ram 22
1 Shyam 23
2 Hari 31
df_1
끝에df_2
를 추가하고 두 DataFrame의 병합 행을merged_df
반환합니다. 여기서 merged_df
의 색인은 상위 DataFrame과 동일합니다.
예제 코드: pandas.DataFrame.append()
를 사용하여 DataFrames 추가 및 색인 무시
import pandas as pd
names_1=['Hisila', 'Brian','Zeppy']
salary_1=[23,30,21]
names_2=['Ram','Shyam',"Hari"]
salary_2=[22,23,31]
df_1 = pd.DataFrame({'Name': names_1, 'Salary': salary_1})
df_2 = pd.DataFrame({'Name': names_2, 'Salary': salary_2})
merged_df = df_1.append(df_2,ignore_index=True)
print(df_1)
print(df_2)
print( merged_df)
출력:
Name Salary
0 Hisila 23
1 Brian 30
2 Zeppy 21
Name Salary
0 Ram 22
1 Shyam 23
2 Hari 31
Name Salary
0 Hisila 23
1 Brian 30
2 Zeppy 21
3 Ram 22
4 Shyam 23
5 Hari 31
df_1
끝에df_2
를 추가하고 여기서merged_df
는append()
메서드에서ignore_index=True
인수를 사용하여 완전히 새로운 인덱스를 가져옵니다.
DataFrame.append()
메서드에서verify_integrity=True
설정
append()
메소드에서verify_integrity=True
를 설정하면 중복 인덱스에 대해ValueError
가 발생합니다.
import pandas as pd
names_1=['Hisila', 'Brian','Zeppy']
salary_1=[23,30,21]
names_2=['Ram','Shyam',"Hari"]
salary_2=[22,23,31]
df_1 = pd.DataFrame({'Name': names_1, 'Salary': salary_1})
df_2 = pd.DataFrame({'Name': names_2, 'Salary': salary_2})
merged_df = df_1.append(df_2,verify_integrity=True)
print(df_1)
print(df_2)
print( merged_df)
출력:
ValueError: Indexes have overlapping values: Int64Index([0, 1, 2], dtype='int64')
df_1
과df_2
의 요소는 기본적으로 동일한 인덱스를 갖기 때문에ValueError
를 생성합니다. 이 오류를 방지하기 위해 기본값 인verify_integrity
, 즉verify_integrity=False
를 사용합니다.
예제 코드: 다른 열로 데이터 프레임 추가
다른 열과 함께DataFrame
을 추가하면이 열이 결과DataFrame
에 추가되고 원본 또는 다른DataFrame
에있는 존재하지 않는 열의 해당 셀이NaN
으로 설정됩니다.
import pandas as pd
names_1=['Hisila', 'Brian','Zeppy']
salary_1=[23,30,21]
names_2=['Ram','Shyam',"Hari"]
salary_2=[22,23,31]
Age=[30,31,33]
df_1 = pd.DataFrame({'Name': names_1, 'Salary': salary_1})
df_2 = pd.DataFrame({'Name': names_2, 'Salary': salary_2,"Age":Age})
merged_df = df_1.append(df_2, sort=False)
print(df_1)
print(df_2)
print( merged_df)
출력:
Name Salary
0 Hisila 23
1 Brian 30
2 Zeppy 21
Name Salary Age
0 Ram 22 30
1 Shyam 23 31
2 Hari 31 33
Name Salary Age
0 Hisila 23 NaN
1 Brian 30 NaN
2 Zeppy 21 NaN
0 Ram 22 30.0
1 Shyam 23 31.0
2 Hari 31 33.0
여기서df_1
의 행은Age
열이df_2
에만 존재하므로Age
열에 대한NaN
값을 가져옵니다.
또한sort = False
를 설정하여 향후 Pandas 버전에서 정렬이 더 이상 사용되지 않는다는 경고를 표시하지 않습니다.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn