티스토리 뷰
❗❗chatGPT를 사용하여 예시 데이터 프레임과 아래와 같이 프롬프트를 작성하여 얻은 코드입니다.❗❗
"'다운로드명'은 중복으로 생성하고 '시도명'에 있는 리스트값을 한행씩 쪼개는 코드를 작성해줘"
아래와 같이 explode
함수를 사용하여 시도
컬럼을 리스트에서 한 행씩 쪼개서 중복된 다른 컬럼의 값과 함께 표현할 수 있습니다.
import pandas as pd
# 데이터프레임 생성
data = {'다운로드파일명': ['부산1_부산광역시_건축사사무소 현황_20220719.CSV', '부산2_부산광역시_도시공간정보시스템_도로안내시설_20210720.CSV', '부산4_부산광역시_도시공간정보시스템_지하시설_20220711.CSV', '부산6_부산광역시_부산도시공간정보시스템_도로상하수도기반시설물_업체정보_2022071...', '부산8_부산광역시_도시공간정보시스템 _도로(건축물) 정보_20220711.CSV'],
'시도': [['부산광역시'], None, None, ['세종특별자치시', '서울특별시', '인천광역시', '전라남도', '경상북도', '대구광역시', '경기도'], ['부산광역시']],
'시군구': [['강서구', '수영구', '사상구', '영도구', '북구', '부산진구', '중구', '해운대구', '사하구', ...], ['동구'], ['동구'], ['강서구', '용인시 처인구', '용인시', '성남시 중원구', '사하구', '고양시 일산동구', '성북...'], ['강서구', '수영구', '사상구', '영도구', '북구', '부산진구', '중구', '해운대구', '사하구', ...]]}
df = pd.DataFrame(data)
# '시도' 컬럼을 한 행씩 쪼개서 데이터프레임을 생성
df_expanded = df.explode('시도').reset_index(drop=True)
# '다운로드파일명' 컬럼을 중복으로 생성
df_expanded = df_expanded.reindex(df_expanded.index.repeat(df_expanded['시도'].str.len()))
# 결과 확인
print(df_expanded)
반대로 여러행으로 구성된 데이터 프레임을 단일 행으로 합치고 싶을 땐 groupby와 agg을 사용합니다.
[Pandas] groupby, agg 여러 행을 단일 행의 리스트로 넣기
반응형
'파이썬(Python)&판다스(Pandas)&Polars' 카테고리의 다른 글
[Python] 여러 딕셔너리(dictionary)를 하나의 딕셔너리로 합치기 (0) | 2023.05.03 |
---|---|
[Pandas] groupby, agg 여러 행을 단일 행의 리스트로 넣기 (0) | 2023.04.28 |
[Pandas] 행정구역 추출하여 새로운 컬럼으로 정보 추가하기 str.cat() (0) | 2023.04.07 |
[Pandas] 여러 파일의 행 수, 열 수를 하나의 데이터 프레임으로 만들기(listdir(), shape()) (0) | 2023.02.02 |
[Pandas] 서로 다른 데이터프레임에서 특정 값을 매핑해 새로운 컬럼 만들기 (0) | 2023.01.10 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Claude
- writerow
- polars
- cursorai
- Postgis
- SPARQL
- Vue3
- psycopg
- knowlegegraph
- difflib
- p-tuing
- ChatGPT
- TextRank
- 지식그래프임베딩
- hadoop
- vervel
- pandas
- pdfmathtranslate
- knowledgegraph
- python
- Encoding
- 지식그래프
- PostgreSQL
- LLM
- PEFT
- MongoDB
- 키워드추출
- python'
- rdflib
- vscode
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함