본문 바로가기

전체 글307

seaborn 활용해 그래프 그리기 - seaborn 활용하면 더 화려한 그래프를 그릴 수 있음. (이거 자체가 matplotlib 라이브러리를 기반으로 만든거) 1. 히스토그램 >> 넘 많아서..ㅎ.. 2. 막대 그래프 *** count 그래프 : 이산값을 나타낸 그래프. x축 변수의 개수를 표시하는, y축은 변수의 개수를 표시하기 때문에 x 축에 설정할 변수만 지정함. 정량적인 데이터보다는 카테고리컬한(범주형) 데이터가 좀 더 알맞음 - countplot 메서드에 tips 데이터프레임의 day열 데이터를 넣어 그림 - countplot 메서드 자세히 알아보기 > https://steadiness-193.tistory.com/192 https://seaborn.pydata.org/generated/seaborn.countplot.html.. 2023. 6. 19.
pandas / matplotlib 그래프 그리기(종류) - seaborn 라이브러리의 tips 데이터 집합 > 어떤 식당에서 팁을 지불한 손님의 정보를 모아둔 것 1. 히스토그램 : 데이터프레임의 열 데이터 분포와 빈도를 살펴보는 용도로 자주 사용하는 그래프 ▲ 위 DF에서 total_bill, tip 등의 열을 변수라고 부르기도 함 ▲ 변수 하나만 사용해서 그린 그래프 = 일변량 그래프 ▲ x축의 간격은 bins = 인잣값으로 조정 가능 ( 여기서는 x축의 간격을 10으로 하겠다) 2. 산점도 그래프 : 변수 2개를 사용해서 만드는 그래프 (이것은 이변량 그래프) 3. 박스 그래프 : 이산형 변수와 연속형 변수를 합께 사용하는 그래프 ( 이산형 변수 : 남/여 처럼 명확하게 구분되는 값, 연속형 변수 : Tip과 같이 명확하게 셀 수 없는 범위의 값) 3... 2023. 6. 18.
pandas/matplotlib/seaborn 앤스콤 4분할 그래프 - 영국의 프랭크 앤스콤이 발견한 함정을 보여주기 위해 만든 그래프 - 데이터를 시각화하지 않고 수치(평균, 분산과 같은 수칫값, 상관관계 회귀선)가 같다는 이유로 모든 데이터가 같을 거라고 생각하는 함정을 지적. - 하지만 각 데이터 그룹을 시각화하면 데이터 그룹이 서로 다른 데이터 패턴을 가지고 있다는 점을 금방 알 수 있음. 1. 앤스콤 데이터 집합 불러오기 > 앤스콤 데이터 집합은 seaborn 라이브러리에 포함되어있음. > 아래 코드처럼 불러올 수 있음. >> 선말고 다른 마커로 하고싶으면 아래 링크 참고 https://matplotlib.org/stable/api/markers_api.html#module-matplotlib.markers 2. 앤스콤 데이터 집합은 4개의 데이터 그룹으로 구성.. 2023. 6. 18.
pandas 시리즈 및 데이터프레임 저장 및 불러오기 - 피클 : 데이터를 바이너리 형태로 직렬화한 오브젝트를 저장하는 방법, 스프레드 시트보다 더 작은 용량으로 데이터를 저장할 수 있어 매우 편리 to_pickle 을 사용해 저장 경로를 전달하면 됨. > 피클을 불러올때는 반드시 read_pickle 메서드를 사용해서 읽어야함. - CSV : 데이터를 쉽표로 구분하여 저장한 파일 - TSV : 데이터를 탭으로 구분하여 저장한 파일 >> 이것들도 to_pickle 처럼 to_csv, to_tsv, to_json 등으로 메소드 사용해서 해당 확장자로 저장할 수 있음. *** 일반 시리즈는 엑셀 구조와 맞지 않아서 맞는 데이터프레임으로 변환해야함. >>> 하지만 엑셀로 저장하려면 xlwt 또는 openpyxl 라이브러리 필요. >>>>> 시리즈는 to_fram.. 2023. 6. 18.
Pandas 판다스 데이터 처리하기 1. to_datetime(바꿀 열, format) > 날짜를 문자열에서 datetime 이라는 자료형으로 바꿨음. 2. 기존데이터프레임['새로운열이름'] = ('새로운 데이터값') ▼ 날짜형 (datetime)으로 바꾼 거리를 새로운 열로 추가, 형태가 (8*5)에서 (8*7)로 2개의 열이 추가되었음. ▼ 기존에 있던 열들을 계산해서 새로 추가하는 것도 가능 3. 시리즈, 데이터프레임의 데이터 섞기 - random 라이브러리에서 shuffle 사용하여 데이터를 섞어줄수 있음. 그럼 인덱스에 해당하는 값이 잘 섞여있음. SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame ▶ 하다보니 이런 에러가.. 2023. 6. 14.
Pandas 판다스 시리즈/데이터프레임 다루기 - 불린,브로드캐스팅 1. 통계 수치 계산 - mean, min, max, std 메서드를 호출해 통계 수치를 계산할 때 열을 추출하여 메서드 사용 가능 - 열이름 [ 인덱스] => 인덱스를 True 나 False으로 반환값 받아서 비교연산자를 사용해서 원하는 값만 추출 가능..! >> 리스트 형태로 시리즈에 전달하면 True인 인덱스의 데이터만 추출 가능 ( 이것이 바로 Boolean 추출) **** 시리즈는 벡터의 한 종류 ** 벡터 : 시리즈처럼 여러 개의 값을 가진 데이터 ** 스칼라 : 단순 크기를 나타내는 데이터 2. 브로드캐스팅, Broadcasting - 모든 데이터에 대해 한 번에 연산하는 것 - 사칙연산을 수행하거나 스칼라를 연산하여 결과값을 가져올 수도 있음. - 시리즈 + 시리즈도 되지만 크기(길이)가 .. 2023. 6. 14.
BMI 프로그램 클래스로 만들기 class Bmi: def __init__(self, height, weight): self.height = height self.weight = weight def cal(self): return self.weight/ self.height **2 class BmiOutput(Bmi): def __init__(self, name, height, weight): super().__init__(height, weight) self.name = name def get_bmi_kind(self): if self.cal() 18.5: return "정상 👍" elif self.cal() < 24.9 .. 2023. 6. 14.
pandas Series, DataFrame 만들기 1. 시리즈 만들기 - 리스트를 전달해서 만들기 - index 인자를 통해 인덱스를 문자열, 등등 으로 원하는대로 만들수 있음 (리스트를 담아 전달하면됨) 2. 데이터 프레임 만들기 - 딕셔너리를 전달해 만들기 - index 인자에 리스트를 전달해 인덱스를 따로 지정 가능 - columns 인자를 사용하면 열 순서 지정 가능 >> 딕셔너리 key 로 지정을 해줬어도 columns 해놓으면 이거를 따라감. - OrderedDict >> 딕셔너리, 리스트 순서를 유지하면서 데이터 프레임 만들 수 있음. ▶ 아니 근데 딕셔너리로만 만들어야 하는 줄 알았더니,, 리스트도 되네...?ㅎ ** Age 에서 정수형 리스트로 전달해도 DF 만들고나면 자료형이 오브젝트로 인식됨. 3. 데이터프레임.index / 시리즈... 2023. 6. 13.
pandas 판다스 기초적인 통계 계산 - 그룹별로 묶어서 계산해줄때 > groupby( '묶어줄 열 이름') [ '불러올열이름'] .mean(요것은 평균, sum 이런것도 있겠지) > groupby 하고 나면 요런 타입, groupby하고나서 거기서 열을 추출하고 나면 seriesgroupby라는 타입으로 됨. ▼ 요렇게 groupby 로 year과 continent을 묶은 후에 lifeExp 랑 gdpPercap 의평균을 같이 내보기도함 >> groupby 도 그렇고 평균(통계) 낼 열이름도 그렇고 2가지 이상 할 때는 '리스트'형태로 인수값주면됨 - nunique() : 그룹화한 데이터 개수 세기 >> 이를 통계에서는 '빈도수' 라고 부름 2023. 6. 13.