-
pandas전 알아야하는 기본 - data파일 처리 -pandas 2024. 11. 12. 10:07
데이터의 기본적인 이동은
1. 데이터 수집
2. 데이터 구조화
3. 데이터 전처리
4. 데이터 분석
총 4가지로
1. 데이터 수집 == 인터넷(크롤링), 데이터 베이스( SQL, noSQL ), Open APL, file
2. 데이터 구조화 == JSON, CSV, XML, Plain Text
3. 데이터 전처리 == python , pandas
4. 데이터 분석 == 데이터 분석( EDA ), 데이터 시각화
파일 오픈 ( Plain Text )
프로그래밍에서 파일은 다음과 같은 3가지 명령의 순서로 처리할 수 있습니다.
파일오픈
파일 읽기 또는 쓰기
파일 닫기
파일의 여러 data를 불러오는 것은
변수명 = open( 'data경로' , '목적' , '부과 설정' )
변수명 = open('data경로', '모드', '인코딩')여기서 각 매개변수의 역할은 다음과 같습니다.
- data경로: 파일의 경로를 지정합니다. 파일이 현재 코드가 실행 중인 디렉토리 내에 있지 않다면, 파일의 전체 경로를 지정해야 합니다.
- 모드 (파일 열기 목적): 파일을 어떻게 열지 결정하는 옵션입니다. 대표적인 옵션은 다음과 같습니다.
- 'r': 읽기 모드 (기본값). 파일을 읽기 전용으로 엽니다.
- 'w': 쓰기 모드. 파일이 있으면 내용을 지우고 새로 작성하며, 파일이 없으면 새로 생성합니다.
- 'a': 추가 모드. 파일이 존재하면 파일 끝에 데이터를 추가하고, 파일이 없으면 새로 생성합니다.
- 'b': 바이너리 모드. 파일이 텍스트가 아닌 바이너리 데이터일 때 사용합니다.
- 인코딩 (선택 사항): 텍스트 파일의 인코딩을 지정합니다. 기본 인코딩은 UTF-8이며, 다른 인코딩이 필요할 때만 설정합니다.
- 예를 들어 encoding='utf-8', encoding='cp949'와 같이 지정합니다.
예제
텍스트 파일을 읽기 전용으로 열어 데이터를 가져오는 예제는 다음과 같습니다:
pythonfile = open('data경로', 'r', encoding='utf-8') data = file.read() file.close()참고: 파일을 열고 나서 닫아주는 것이 중요합니다. 이를 위해 with 구문을 사용하면 자동으로 파일이 닫히므로 더 안전하고 편리합니다.
pythonwith open('data경로', 'r', encoding='utf-8') as file: data = file.read()with 구문을 사용하면 파일을 다 사용한 후 자동으로 닫히므로, 리소스 관리가 더 용이합니다.
인코딩이 중요한 이유
- 문자 표현: 컴퓨터는 기본적으로 숫자와 이진 데이터를 이해하지만, 문자를 직접 이해하지는 않습니다. 인코딩은 텍스트를 특정 형식의 **바이너리 데이터(0과 1)**로 변환해 저장하는 방법입니다.
- 문자 집합 차이: 인코딩마다 지원하는 문자의 범위가 다릅니다. 예를 들어, ASCII는 영어 알파벳과 일부 기호만 표현할 수 있지만, UTF-8이나 UTF-16 같은 유니코드(Unicode) 인코딩은 전 세계 대부분의 문자(한국어, 일본어, 한자 등)를 표현할 수 있습니다.
- 파일 호환성: 동일한 인코딩으로 파일을 저장하고 읽어야 올바르게 해석됩니다. 서로 다른 인코딩 방식으로 저장하고 읽으려고 할 경우 문자가 깨지거나 오류가 발생할 수 있습니다.
주요 인코딩 종류
- UTF-8:
- 가장 널리 쓰이는 유니코드 인코딩으로, 영어와 같은 단순한 문자는 1바이트, 다른 문자는 2~4바이트를 사용하여 저장합니다.
- 모든 언어에 대해 호환성이 좋고, 효율적입니다. 대부분의 웹 페이지와 애플리케이션에서 기본 인코딩으로 사용됩니다.
- UTF-16:
- 모든 문자를 2바이트(또는 4바이트)로 저장합니다.
- UTF-8보다 메모리를 더 많이 사용할 수 있지만, 일부 언어의 대용량 데이터에서는 속도가 빠를 수도 있습니다.
- ASCII:
- 영어 알파벳과 숫자, 일부 특수 문자만을 1바이트로 표현합니다.
- 용량이 적고 효율적이지만, 한국어, 중국어, 일본어와 같은 비영어권 언어는 표현할 수 없습니다.
- CP949 (또는 EUC-KR):
- 한국어 Windows 시스템에서 기본적으로 사용하는 인코딩 방식입니다.
- 한국어와 일부 특수 문자만을 지원하므로, 다른 언어에서는 사용이 제한적입니다
경로를 읽을 때, excel의 셀 주소와 파일 경로
파일의 경로는 excel의 셀의 기본개념이 많이 닮았습니다.
절대경로 == 그 지점의 원하는 data가 있어야지만
=TEXT(C:\Users\John\Documents\Project\sales_data.csv, "dd-mm-yyyy")
상대경로 == 파일을 상대적으로 가져오는 값을 의미합니다.
=TEXT(.\sales_data.csv, "dd-mm-yyyy")
.. / .. / data, sales_data.csv,"파일명" )
앞에 더 있다 , 파일명, data명)
상대 경로는 기준이 되는 위치(현재 작업 중인 디렉토리나 워크시트)를 기준으로 파일이나 폴더의 위치를 지정하는 경로입니다. 상대 경로는 현재 위치에서 얼마나 떨어져 있는지를 기준으로 하기 때문에, 파일이나 폴더의 위치가 변경되면 상대 경로도 변경됩니다.
'pandas' 카테고리의 다른 글
XML형식의 장점 (1) 2024.11.14 CSV 포맷 이해와 파이썬으로 CSV파일 다루기 (0) 2024.11.13 PANDAS 전 알아야 할 점 (0) 2024.11.11 Jupyter Notebook을 Excel처럼 활용하는 법: Pandas와 함께하는 데이터 분석 입문 (0) 2024.11.06 데이터분석의_pandas를_하기_이전_아나콘다 -- 쥬피터 노트북 (3) 2024.11.05