목록Data Engineer (36)
취미가 좋다

데이터 그룹 만들기 아래와 같은 학생들의 데이터가 있을 때, df.groupby를 사용하여 각 전공별로 데이터 그룹을 만들어보자. for문을 사용하여 더 보기 좋게 출력할 수 있다. 위에서 만든 데이터 그룹으로 새로운 데이터프레임을 만들어보자. count라는 인덱스로 각 전공별 인원 수를 넣는다. reset_index() 를 사용해서 기존의 major도 index로 넣는다. https://youtu.be/y1AM0CmgK7k

열 생성, 수정하기 새로운 열의 인덱스를 선언하고 값을 넣어주면 모든 행에 같은 열 값이 들어간다. 위처럼 모두 같은 값을 넣지 않고 조건문을 통해 원하는 값을 넣을 수도 있다. np.where은 앞의 조건이 True일 때 2번 째 인자를 반환하고, False일 때 3번 째 인자를 반환한다. 연산을 통해서 열에 값을 넣을 수 있다. 같은 길이의 리스트로 새로운 열을 추가할 수 있다. 길이가 다르면 에러가 발생한다. apply 로 함수를 활용하여 열 값을 수정할 수 있다. 행 생성하기 기존 데이터프레임에 append를 통해 다른 데이터프레임을 붙일 수 있다. pd.DataFrame으로 새로운 데이터프레임을 생성한다. ignore_index를 통해 기존의 0 인덱스를 무시하고 새로 추가되면서 새로운 인덱스를..

인덱스로 행과 열을 선택하기 리스트처럼 인덱스 슬라이싱으로 데이터를 뽑을 수 있다. 반환만 하므로 변경까지 원한다면 df = df[1:3] 을 해야한다. df[1:3] 원하는 데이터의 인덱스를 직접 입력할 수도 있다. df.loc[[0,2]] 열에 조건을 주어 행을 필터링하기 대괄호 [ ] 안에 조건을 넣거나, query 함수의 인자로 조건을 넣을 수 있다. 둘 다 같은 결과를 가져온다. df[df.age > 25] df.query('age > 25') 여러 조건을 추가할 수도 있다. df[ (df.age>25) & (df.name=='Nate') ] 행에 조건을 주어 열을 필터링하기 인덱스를 이용해서 열을 필터링할 수 있다. iloc 의 첫 인자는 행을 의미하고 두 번째 인자는 열을 의미한다. 그래서 ..

데이터 프레임을 파일로 저장하기 위와 같은 데이터 프레임을 파일로 저장해보자. df.to_csv('temp.csv', index=True, header=True) jupyter lab이 있는 위치에 csv파일이 생성된다. index와 header는 True를 default 값으로 가지고 있다. index를 False로 설정하면 각 데이터들이 있는 row가 저장되지 않는다. header를 False로 설정하면 각 데이터들의 헤더들이 저장되지 않는다. None 값을 치환해서 채우기 위와 같이 None, NaN과 같은 빈 값이 있을 때, 원하는 값으로 대체하여 저장할 수 있다. df.to_csv('friend_list_from_df.csv', na_rep = '-') https://youtu.be/ffjpgv..

딕셔너리로 데이터 프레임 생성하기 각 row는 딕셔너리이고 그 row들을 모아서 리스트를 만든다. 그 리스트로 데이터 프레임을 만들면 아래와 같다. import pandas as pd friend_dict_list = [{'name': 'Jone', 'age': 20, 'job': 'student'}, {'name': 'Jenny', 'age': 30, 'job': 'developer'}, {'name': 'Nate', 'age': 30, 'job': 'teacher'}] df = pd.DataFrame(friend_dict_list) 리스트로 데이터 프레임 생성하기 2차원 리스트를 만들고, 따로 헤드를 만든다. from_records라는 함수로 데이터 프레임을 생성한다. friend_list = [ [..

존재하는 파일로부터 데이터 가져오기 csv 파일로부터 가져올 수 있다. txt 파일로도 가져올 수 있지만, 데이터가 ','로 구분되어 있어야 한다. 데이터가 ',' 로 구분되어있지 않고 다른 구분문자로 되어 있으면, delimiter 인자로 지정해주면 된다. import padas as pd df = pd.read_csv('example.csv') df = pd.read_csv('example.txt', delimiter='\t')# 데이터가 탭으로 구분되어 있을 때 헤드 정보가 없을 때 설정하는 법 파일을 가져올 때 헤드 정보가 없다는 것을 알려주고 따로 넣어준다. df = pd.read_csv('example.csv', header=None) df.columns = ['name', 'age', 'jo..