반응형
기본 데이터 프레임 생성
read.csv()사용해서 cav파일을 df 라는 데이터 프레임으로 불러왔다고 예시를 들어보자
df = pd.read_csv('경로명')
df 데이터 프레임의 컬럼이 'a', 'b' 로 이루어져있고
'a' 컬럼에는 숫자 ex) 1,2,3,10,34,57....
'b' 컬럼에는 영어 알파벳이 들어있다고 ex) a,b,c,d,e,f....
가정해보자.
빈 데이터 프레임 test_df 생성
기존 데이터 프레임과 비교해서 합치기 쉽도록 동일한 컬럼으로 구성한다.
test_df = pd.DataFrame(columns=['a','b'])
test_list = ['1','2','3','20','56']
test_list 리스트에 있는 값과 기존 데이터 프레임 'a' 컬럼의 값을 비교해서 같은 값인 행들만 추출해서 빈 데이터 프레임과 합침
.append()
파이썬 리스트, 딕셔너리 등에 요소(인자)를 추가 삽입하는 함수
함수 형식
- dataframe.append(dataframe)
- list.append(object)
append 사용 예시
for i in test_list:
test_df = test_df.append(df[df['a'] == i])
결과
위와 같은 오류 메세지가 나오는 이유는 파이썬 버전이 업그레이드되면서
데이터 프레임에 .append()함수를 사용할 수 없게 된 것 같다.
pd.concat()
기본적으로 시리즈나 데이터프레임과 같은 객체들을 특정 방향을 기준으로 단순히 이어붙이는 함수
함수 형식
pd.concat( [데이터프레임, 데이터프레임] )
concat 사용 예시
for i in test_list:
test_df = pd.concat([test_df, (df[df['test_id'] == i])])
행방향으로 합치기: axis = 0
열방향으로 합치기: axis = 1
axis예시
pd.concat([df1,df2],axis=0)
위와 같은 오류가 뜨면
pd.concat([df1,df2])의 함수 구성을 제대로 맞추지 못한 것일 가능성이 높음!
'Python' 카테고리의 다른 글
[Python] DB 연결 (sqlalchemy 사용방법 - to_sql, read_sql, connect, commit, rollback) (0) | 2023.12.13 |
---|---|
[python] split, slice, join | 데이터 프레임, 리스트 문자열 나누기 합치기(특정문자 기준 앞, 뒤 출력) (0) | 2023.09.14 |
[python] Multi-Thread 동시성/병렬성 프로그래밍(시간단축) (0) | 2023.08.11 |
[python] for, if문 한줄 작성 | 리스트 컴프리헨션(List Comprehension) (2) | 2023.07.31 |
[python] 문자열 내 특정 문자 찾기(startswith, endswith) (0) | 2023.07.30 |