Python - Pandas str.get(), idmax(), replace()
·
Python/Python 기초문법
str.get(i) i index의 문자열을 출력 예시) 데이터 불러오기 titanic = pd.read_csv("https://raw.githubusercontent.com/pandas-dev/pandas/main/doc/data/titanic.csv") titanic 해당 데이터에서 Name의 값들을 ,로 구분하고 Surname이라는 열 추가하여 Surname 값에 이름을 추가 titanic['Surname'] = titanic['Name'].str.split(',').str.get(0) titanic idxmax() 최대값을 가지는 인덱스 레이블 출력 예시) 가장 이름이 긴 승객의 인덱스 titanic['Name'].str.len().idxmax() ---------------------------..
Python - Pandas csv파일 입출력 및 데이터 불러오기
·
Python/Python 기초문법
* csv 파일 기준 다른 파일 형식은 링크 참조 pd.read_csv( 파일 경로 ) 파일 불러오기 import pandas as pd DATA_PATH = 'playground-series-s4e1/' train = pd.read_csv(DATA_PATH + 'train.csv') test = pd.read_csv(DATA_PATH + 'test.csv') submission = pd.read_csv(DATA_PATH + 'sample_submission.csv') train .to_csv('저장할 파일 이름.csv') index = False 시, index 번호는 열로 추출 x 만약 한글이 깨져서 보인다면 인코딩을 추가해주면 된다. encoding='euc-kr' DATA_PATH = 'playg..
Python - Pandas iloc와 loc의 차이
·
Python/Python 기초문법
1. iloc 데이터 프레임의 행 또는 칼럼의 인덱스 값으로 데이터 추출 data.iloc[행 인덱싱 위치, 칼럼 인덱싱 위치] loc와 달리 조건식 사용이 불가능 첫번째 행 출력 df_KTX.iloc[0] 두번째 열 출력 df_KTX.iloc[:,1] 범위 지정하여 출력 df_KTX.iloc[1:3,0:2] 2. loc 데이터 프레임의 행 또는 칼럼의 라벨(이름)로 데이터 추출 data.loc[행 이름, 열 이름] 첫번째 행 출력 df_KTX.loc['2011',:] 두번째 열 출력 df_KTX.loc[:,'호남선 KTX'] 두개 이상의 열 추출할 때 df_KTX.loc['2013':'2016', ['경부선 KTX', '호남선 KTX']] 조건식 활용 데이터 불러오기 import seaborn as s..
Python - Pandas DataFrame에서 일부 데이터 추출
·
Python/Python 기초문법
head(n) : 처음 n개의 행 데이터 반환 tail(n) : 마지막 n개의 행 데이터 반환 n을 지정하지 않으면 기본적으로 5가 지정됨 import pandas as pd import numpy as np KTX_data = {'경부선 KTX': [39060, 39896, 42005, 43621, 41702, 41266, 32427], '호남선 KTX': [7313, 6967, 6873, 6626, 8675, 10622, 9228], '경전선 KTX': [3627, 4168, 4088, 4424, 4606, 4984, 5570], '전라선 KTX': [309, 1771, 1954, 2244, 3146, 3945, 5766], '동해선 KTX': [np.nan,np.nan, np.nan, np.nan,..
Python - Pandas DataFrame을 활용한 데이터 생성과 연산
·
Python/Python 기초문법
DataFrame을 활용하면 라벨이 있는 2차원 데이터를 생성하고 처리할 수 있다. pd.DataFrame() table_data = { '연도' : [2015, 2016, 2016, 2017, 2017], '지사' : ['한국', '한국', '미국', '한국', '미국'], '고객 수' : [200, 250, 450, 300, 500] } data = pd.DataFrame(table_data) data # result data.index output: RangeIndex(start=0, stop=5, step=1) ------------------------------------------------------ data.values output: array([[2015, '한국', 200], [201..
Python - Pandas 데이터 생성 & 날짜 자동 생성
·
Python/Python 기초문법
Numpy에서는 모든 원소의 데이터 타입이 같아야 했지만 Pandas는 혼합된 데이터 타입을 인자로 이용할 수 있다. 데이터 생성 : Series() series의 인자에는 시퀀스 데이터가 들어감. 주로 리스트 데이터를 이용 인자를 넣은 데이터에 순서를 표시하는 라벨이 자동으로 부여 s1 = pd.Series([10, 20, 30, 40, 50]) s1 --------------------------------------- # result 0 10 1 20 2 30 3 40 4 50 dtype: int64 index, values 분리해서 가져오기 s1.index -------------------------- # result RangeIndex(start=0, stop=5, step=1) s1.valu..
Python - Numpy 조건문
·
Python/Python 기초문법
np.where(조건, True, False) : 단일 조건문 5 미만이면 arr을 출력, 아니면 *10을해라 arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) np.where(arr 5, ..
Python - Numpy 배열의 연산 & 인덱싱과 슬라이싱
·
Python/Python 기초문법
기본연산 Numpy 배열은 배열의 형태가 같다면 연산이 가능 arr1 = np.array([10, 20, 30, 40]) arr2 = np.array([1, 2, 3, 4]) print(arr1 + arr2) print(arr1 - arr2) print(arr1 * arr2) print(arr1 / arr2) ----------------------------------- # result [11 22 33 44] [ 9 18 27 36] [ 10 40 90 160] [10. 10. 10. 10.] 비교연산 arr1 = np.array([10, 20, 30, 40]) arr1 > 20 -------------------------------------- # result array([False, False,..