csv 데이터로부터 DataFrame 생성
데이터 분석을 위해, dataframe을 생성하는 가장 일반적인 방법
데이터 소스로부터 추출된 csv(comma separated values) 파일로부터 생성
pandas.read_csv( ) 함수 사용
.csv 파일을 열어보면 다음과 같이 comma로 나눠져 있음을 확인할 수 있다.
해당 csv를 pandas로 불러오면 다음과 같이 들어가있는것을 확인할 수 있다.
read_cvs 함수 파라미터
sep : 각 데이터 값을 구별하기 위한 구분자(separator) 설정
header : header를 무시할 경우, None 설정
index_col : index로 사용할 column 설정
usecols : 실제로 dataframe에 로딩할 columns만 설정.
pd.read_csv( filepath_or_buffer: Union[str, pathlib.Path, IO[~AnyStr]], sep=',', delimiter=None, header='infer', names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, skipfooter=0, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, cache_dates=True, iterator=False, chunksize=None, compression='infer', thousands=None, decimal=b'.', lineterminator=None, quotechar='"', quoting=0, doublequote=True, escapechar=None, comment=None, encoding=None, dialect=None, error_bad_lines=True, warn_bad_lines=True, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None, )
sep
해당 csv파일은 ,(comma)로 구분되어있기 때문에
구분자를 #으로 주는 경우 데이터가 잘 구분되지 않는다.
header
header는 pandas가 자동적으로 유추를 하는 경우가 많은데
직접 설정도 가능하다.
위와 같이 기본적으로 헤더줄이 존재하지 않는다면 None을 줘서 숫자로 표시가 가능하다.
index_col
index_col을 명시하지 않거나 None으로 명시하는 경우
인덱스 칼럼은 자동적으로 0부터 시작한다.
하지만 위의 예시에서 잘 보면
PassengerId 칼럼을 충분히 인덱스로 사용할 수 있을 것 같다.
따라서 index_col을 PassengerId로 주면 해당 속성을 인덱스 칼럼으로 사용하게 된다.
usecols
필요한 칼럼만 명시적으로 표시하면 해당 칼럼들만 로딩한다.
위 내용은 fastcampus 강의 내용을 정리한 것입니다.
'AI > 데이터분석' 카테고리의 다른 글
[pandas] DataFrame 원하는 row만 선택하기 (0) | 2020.02.17 |
---|---|
[pandas] DataFrame 원하는 column만 선택하기 (0) | 2020.02.17 |
[pandas] DataFrame 데이터 생성하기 (0) | 2020.02.17 |
[pandas] DataFrame 구조 이해하기 (0) | 2020.02.15 |
[pandas] DataFrame 데이터 살펴보기 (0) | 2020.02.15 |