목록pandas (15)
Koo's.Co
pandas 라이브러리에서 사용하는 함수 정리 1. 생성 import pandas as pd # Dict를 입력값으로 받는 경우 # Key는 column이 된다 df = pd.DataFrame({'a': [4, 5, 6, 7], 'b': [8, 9, 10, 11], 'c': [12, 13, 14, 15]}, index=[1, 2, 3, 4]) # List를 입력값으로 받는 경우 # 각 리스트는 row가 된다 df2 = pd.DataFrame( [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]], index=[1, 2, 3, 4], columns=list('abc')) 2. 이중 인덱스 데이터프레임 # index를 MultiIndex로 설정 #..
pandas.DataFrame.pivot을 사용하면 열값에 따른 pivot table을 생성할 수 있습니다. 행값과 열값이 동일한 데이터가 2개 이상 존재하면 ValueError가 발생하기 때문에 주의해야 합니다. 파라미터 설명 index pivot table의 index를 생성할 열 선택 default=None columns pivot table의 column을 생성할 열 선택 default=None values pivot table이 나타낼 값을 선택 별도로 지정을 하지 않는다면 남은 열들을 사용함 defalut=None import pandas as pd data = pd.read_csv('data.csv') data[:8].pivot('age', 'sex', 'height') pivot을 사용하면..
1. pandas.crosstab crosstab은 범주형 변수를 기준으로 데이터의 개수를 파악할 때 사용합니다. crosstab을 사용해 빈도표를 만들어 카이제곱검정을 할 때도 유용합니다. 파라미터 설명 index: array-like, Series,list, arrays 행으로 지정할 데이터 columns: array-like, Series, list, arrays 열로 지정할 데이터 values: array-like, optional 집계할 데이터 (aggfunc을 같이 사용해야 합니다) aggfunc: function, optional 집계할 방법을 선택(count, mean, median ...) margins: bool, default=False 총계를 보고 싶은 경우 사용 dropna: bo..
pandas를 이용해 csv파일을 읽을 때 가끔 위와 같은 오류가 발생합니다. 보통 csv파일에 한글이 포함되는 경우 발생합니다. cp949를 encoding에 넘겨주면 csv파일을 정상적으로 읽어올 수 있습니다. import pandas as pd data = pd.read_csv('data.csv', encoding='cp949) data.head()
DataFrame은 bool값을 이용한 boolean indexing을 사용할 수 있습니다. import pandas as pd df = pd.read_csv('./data.csv') df[df['country'].isin(['Australia', 'New Zealand')] 위와 같이 boolean indexing을 사용하면 원하는 조건의 값을 쉽게 찾을 수 있습니다. 파이썬에서 if문을 사용할 때처럼, | 또는 & 연산자를 사용하여 동시에 여러 개의 조건을 사용할 수도 있습니다. 이 때는 꼭 각 조건들을 '(', ')'을 사용하여 묶어주어야 합니다. df[df['country'].isin(['Australia', 'New Zealand']) & df['points'] >= 95] 괄호를 사용하지 않고..
pandas의 read_csv를 사용하면 index_col을 같이 불러옵니다. 1. read_csv의 index_col 옵션 사용 import pandas as pd df = pd.read_csv('./data.csv', index_col=0) df 2. drop을 이용해 첫번째 열 제거 df = pd.read_csv('./data.csv') df.drop(df.columns[0], axis=1, inplace=True) 원래와 같이 read_csv를 이용해 데이터를 불러온 후 첫번째 열을 제거하는 방법입니다.
DataFrame에서는 반복문 사용을 지양하고 대부분 내장함수를 사용하여 데이터를 처리합니다. 문자열을 검색할 때 "in"이나 re 모듈을 사용해서 검색을 많이 하는데 오늘은 contains에 대해 공부해보려 합니다. import pandas as pd data = [['Scarlett johansson', 160], ['Christopher Robert Evans', 183], ['Robert John Downey Jr.', 174], ['Mark Ruffalo', 173]] df = pd.DataFrame(data, columns=['name', 'height']) print(df['name'].str.contains('Jr')) 1. contains contains 메소드는 조건에 해당하는 bool..
DataFrame의 인덱스를 초기화할 때는 DataFrame.reset_index() 메소드를 사용합니다. 대부분의 메소드가 inplace를 지원하듯(DataFrame을 반환하지 않고 DataFrame의 값을 변경함) reset_index도 inplace를 지원합니다. import pandas as pd sales = pd.read_excel('매출내역.xlsx') cancel = sales.loc[sales['매출금액'] < 0] cancel.reset_index(inplace=True) cancel 별도의 설정없이 reset_index를 사용하는 경우 index가 따로 빠져나옵니다. drop=True로 설정하면 index를 별도의 열로 갖지 않고 삭제가 됩니다. import pandas as pd s..