pandas 19

파이썬 라이브러리20 pandas 데이터프레임: boolean을 통한 데이터 추출

df = pd.DataFrame({'Employee ID':[111, 222, 333, 444], 'Employee Name':['Chanel', 'Steve', 'Mitch', 'Bird'], 'Salary [$/h]':[35, 29, 38, 20], 'Years of Experience':[3, 4 ,9, 1]}) 이러한 데이터에서 경력이 3년 이상인 데이터가 필요 하다면 경력 부분 컬럼인 'Years of Experience'을 엑세스 하고 3년이상인 데이터만 필터링 하면된다 df['Years of Experience'] >=3 Out 0 True 1 True 2 True 3 False Name: Years of Experience, dtype: bool 모든 데이터를 가져와야 하기 때문에 loc ..

파이썬 라이브러리19 pandas 데이터프레임 : 카테고리컬 데이터 /.agg /.groupby /.unique /value_counts()

중복된 데이터 이러한 데이터가 있다면 이 데이터에서 Year 만 추출했을때 결과는? df['Year'] 값은 1990 1990 1990 1991 1991 1991 1992 1992 1992 이경우 변수['컬럼'].unique() Out array([1990, 1991, 1992], dtype=int64) 이렇게 중복이 제거된 값만 나오게 된다 묶어서 데이터 분석하기 1)그룹별 묶어서 한개 연산하기 변수.groupby('컬럼') 그룹별 묶는 명령어 자체가 함수이기 때문에 필요한 데이터를 추가로 액세스 할 수 있다. 저기서 년도별 지급한 연봉 총합을 구하라 한다면 먼저 연도별 그룹을 생각 하고 연봉을 액세스해서 총합을 구하는 메카니즘을 생각하면 편하다 df.groupby('Year') df.groupby('..

파이썬 라이브러리18 pandas 데이터프레임 : NaN데이터 처리 isna()/notna / dropna() / fillna()

NaN 데이터 처리 비어있는 데이터가 어디에 있는가 확인 변수.isna() 데이터가 비어있는지 확인 변수.notna() 데이터가 채워저있는지 확인 df = pd.DataFrame(data = items2 , index = ['store1','store 2','store 3']) NaN 데이터 삭제하기 변수.dropna() NaN이 있는 데이터는 무조건 삭제 그럼 행이 삭제되어야 함. 특정 값으로 채우기 변수.fillna( 채우려는 값 ) 1.NaN데이터 처리 변수.isna() 데이터가 비어있는지 확인 변수.notna() 데이터가 채워저있는지 확인 2.NaN 데이터 삭제하기 변수.dropna() NaN이 있는 데이터는 무조건 삭제 그럼 행이 삭제되어야 함. 3.특정값으로 채우기 변수.fillna( 채우려는..

파이썬 라이브러리17 pandas 데이터프레임: drop()/rename()/인덱스 바꾸기

데이터 삭제하기 행과 열 삭제하기 변수.drop('인덱스' or '컬럼' , axis = 0 or 1) 1)행 삭제 저데이터 에서 store2를 삭제한다고 하면 df = df.drop('store 2' , axis=0) 2)열삭제 df.drop(['glasses'], axis = 1) 당연히 복수 삭제도 가능하다 인덱스나 칼럼명 바꾸기 변수.rename( index or columns = { '기존이름' : '바꿀이름'} ) 인덱스명 바꾸기 먼저 바꿀 인덱스명의 칼럼을 만든후 set을 통해 인덱스에 inplace (위치 시키기) 두가지의 방법이 있음 df['name'] = ['A','B','C'] 으로 새로운 컬럼을 만들고 df = df.set_index('name') df.set_index('name'..

파이썬 라이브러리16 pandas 데이터프레임: 데이터 변경/ 새로운 컬럼추가

액세스한 데이터로 데이터값 변경 액세스한 값을 그대로 바꿔줄 값만 넣어 주면 쉽게 데이터 변경이 가능하다 1) 특정 위치값 추가 df['watches'] = 20 loc로 표현하면 df.loc['store 2' , 'watches'] = 20 둘다 같은 위치 값을 나타내고 있음 2)새로운 컬럼 추가 추가하고 싶은 칼럼을 액세스 하듯이 불러오면 추가가 가능하다 변수['추가할컬럼'] = [데이터] df['suits'] = df['pants'] + df['shirts'] 이런식으로 다른데이터를 이용해서 추가도 가능 새로운 행주가 새로운 딕셔너리를 만들고 기존 데이터프레임이 들어있는 변수에 append로 추가 하기 new_item = [{'bikes' : 20, 'pants':30, 'watches':35, '..

파이썬 라이브러리14 pandas 데이터프레임: 2차원 데이터 액세스 .loc[,] /.lioc[,] /액세스를 통한 데이터 추가

데이터프레임 액세스 하는방법 items2 = [{'bikes': 20, 'pants': 30, 'watches': 35}, {'watches': 10, 'glasses': 50, 'bikes': 15, 'pants':5}] df = pd.DataFrame(data = items2, index= ['store 1' , 'store 2']) 1) 컬럼 데이터를 가져오는 방법 대괄호로 액세스 [ ] 안에는 컬럼명을 적고 여러개의 컬럼을 가져올땐 리스트로 만들어서 가져오면됨 2)행과 열의 정보로 데이터 가져오는 방법 특정 행에 이 데이터를 가지고 오고 싶다면 변수.loc[ '인덱스명' , '컬럼명' ] 3) 행과 열로 데이터를 가져오는 방법 loc와 작동 원리는 같지만 iloc는 '컴퓨터가 인식하는 숫자' 인덱..

파이썬 라이브러리13 pandas 2차원: DataFrame만들기/ pd.read_csv 불러오기 / csv 불러오기중 주의사항

DataFrame 판다스 2차원 데이터 처리는 데이터 프레임으로 처리한다. pd.DataFrame(data= 데이터들어있는 변수) 파라미터 안에 데이터가 저장된 변수를 넣으면 import pandas as pd # We create a dictionary of Pandas Series items = {'Bob' : pd.Series(data = [245, 25, 55], index = ['bike', 'pants', 'watch']), 'Alice' : pd.Series(data = [40, 110, 500, 45], index = ['book', 'glasses', 'bike', 'pants' 여기서 맨왼쪽은 인덱스 맨위쪽은 컬럼 데이터는 value를 의미 type을 알고싶을땐 . info를 사용한다 ..

파이썬 라이브러리12 pandas 1차원 : pandas Seires/액세스/연산

기본 Allows the use of labels for rows and columns 기본적인 통계데이터 제공 NaN values 를 알아서 처리함. 숫자 문자열을 알아서 로드함. 데이터셋들을 merge 할 수 있음. It integrates with NumPy and Matplotlib import pandas as pd 판다스를 import 하고 앞으로 모든 판다스 함수는 pd로 표현 pandas 데이터 판다스의 1차원 데이터를 의미 pd.Series(data = 변수 ) Seires에서 사용하는 data란 파라미터를 의미하며 이 Seires 함수 안에서 사용 ※변수를 의미는것이 아님 판다스에서 인덱스란 행 제일 왼쪽에 붙는 글자로 데이터 관리를 쉽게 볼 수있게 해줌 ※일반적으로 사용했던 컴퓨터가 ..