- [ Data Analystics/streamlit ][Streamlit] 개발환경 구축하기2024-01-29 19:21:38안녕하세요 이번 글에서는 Streamlit과 Streamlit 개발환경 구축 방법에 대해서 알아보도록 하겠습니다. Streamlit Streamlit은 Data Science, Machine learning 등을 위한 웹 애플리케이션을 쉽게 만들 수 있는 오픈소스 Python 라이브러리 복잡한 프론트엔드 지식 없이도 빠르게 대화형 웹 앱을 구축하고 배포할 수 있습니다. 데이터 시각화, 인터랙티브 위젯, 실시간 데이터 탐색 등의 기능을 Python 코드로 간편하게 구현할 수 있습니다. Streamlit 개발환경 구축하기 1. 가상환경 구축하기 python에서 가상환경 구축시 가장 많이 사용하는 것으로 conda와 virtualenv가 있는데요 1-1에서는 conda로 가상환경 만드는 방법을 1-2에서는 v..
- [ Data Analystics/pandas ][Pandas] '.copy()' vs '=': 깊은 복사(Deep Copy) vs 얕은 복사(Shallow copy)2024-01-15 22:52:48안녕하세요 이번 글에서는 pandas 라이브러리의 .copy() 메소드를 사용한 경우와 '=' 대입연산자를 사용한 경우를 비교해보도록 하겠습니다. 먼저 필요한 라이브러리를 불러오도록 하겠습니다. import pandas as pd import seaborn as sns 라이브러리를 불러온 후 seaborn 라이브러리의 load_dataset 메소드를 사용하여 'diamonds' 데이터셋을 불러온 후 출력해보겠습니다. 출력 결과 53940개의 행과 10개의 열로 구성된 데이터임을 알 수 있습니다. 1. copy() DataFrame이나 Series의 깊은 복사(deep copy)를 생성하는 데 사용합니다. 깊은 복사를 하게 되면, 원본 객체의 데이터와 구조를 완벽하게 복제하여 새로운 객체를 만들게 되며 이..
- [ Data Analystics/visualization ][seaborn] boxplot 그래프를 통해 이상치 확인하고 제거하기 (2)2024-01-12 22:44:41본 글은 Evan Jung님의 Udemy "데이터분석 필수, Python Streamlit을 활용한 대시보드 만들기" 강의를 수강 후 정리해 작성하였습니다. 안녕하세요 [seaborn] boxplot 그래프를 통해 이상치 확인하고 제거하기 (1)에 이어서 이번 글에서는 사용자 정의 함수를 통해 이상치를 처리하는 방법과 seaborn 라이브러리를 활용하여 두 개의 boxplot 그래프를 그리는 것을 알아보겠습니다 ! 이상치 제거 함수 만들기 먼저 필요한 라이브러리를 불러오도록 하겠습니다. import pandas as pd 이후 remove_outliers_iqr 이름의 이상치 제거 함수를 정의하였습니다. [seaborn] boxplot 그래프를 통해 이상치 확인하고 제거하기 (1)에서 다뤘던 이상치 제..
- [ Data Analystics/visualization ][seaborn] boxplot 그래프를 통해 이상치 확인하고 제거하기 (1)2024-01-11 23:15:10본 글은 Evan Jung님의 Udemy "데이터분석 필수, Python Streamlit을 활용한 대시보드 만들기" 강의를 수강 후 정리해 작성하였습니다. 안녕하세요 이번 글에서는 seaborn 라이브러리를 활용해 boxplot 그래프를 통해 이상치를 확인하고 제거하는 방법에 대해 알아보겠습니다. 먼저 필요한 라이브러리를 불러오도록 하겠습니다. 이후 data 폴더에 저장되어 있는 raw_sales.csv 파일을 read_csv 메소드를 사용하여 불러오도록 하겠습니다. parse_dates 매개변수? pandas의 read_csv 메소드를 사용할 때 parse_dates 매개변수는 지정된 컬럼들의 데이터를 파이썬 datetime 객체로 변환해줍니다. CSV 파일에 날짜 정보가 문자열 형태로 저장되어 있을..
- [ Data Analystics/pandas ][Pandas] groupby() 메소드를 사용하여 데이터 그룹화하기2024-01-09 13:54:08안녕하세요 이번 글에서는 pandas library의 groupby() 메소드를 사용해 데이터들을 그룹화하는 방법을 알아보겠습니다. groupby? SQL의 GROUP BY와 동일한 로직 Groupby 기준칼럼 : 패턴이 있는 문자열 => 그룹화 Groupby 대상칼럼 : 수치 데이터 - 필요한 함수 : 집계함수 (합, 평균, 표준편차, 최대, 최소 등) groupby 메소드는 주로 집계함수(aggregate Function)와 함께 사용합니다 사용법 : df.groupby('기준칼럼')['대상칼럼'].agg(['집계함수']) groupby 메소드를 사용하는 이유? 데이터셋을 특정 기준에 따라 그룹화하여, 각 그룹에 대해 통계를 계산하고 싶을 때 사용합니다. 예를 들어, 여러 장르의 책들이 있을 때 각 ..
- [ Data Analystics/pandas ][Pandas] merge() 메소드를 사용하여 데이터 병합하기2024-01-08 17:47:07안녕하세요 이번 글에서는 merge() 메소드를 사용하여 데이터를 병합하는 방법에 대해서 알아보겠습니다. 먼저 pandas 라이브러리를 불러와줍니다. import pandas as pd 라이브러리를 불러온 후 DataFrame 객체 두 개를 생성합니다. 이후 merge() 메소드를 사용하여 df_A_B와 df_C_D를 병합해줍니다. join() 메소드를 사용하여 병합을 하려고 하니, 아래와 같은 에러가 발생했습니다. 이유는 칼럼이 중복되었기 때문입니다 ! join() 메소드를 사용하여 데이터를 병합하고 싶은 경우에는 병합하고자 하는 데이터에서 칼럼이 중복되지 않도록 하여야 합니다. ValueError: columns overlap but no suffix specified: Index(['판매월'], d..
- [ Data Analystics/pandas ][Pandas] join() 메소드를 사용하여 데이터 통합하기2024-01-08 10:56:29안녕하세요 이번 글에서는 join() 메소드를 사용하여 데이터를 통합하는 방법에 대해서 알아보겠습니다. 먼저 pandas 라이브러리를 불러옵니다. import pandas as pd 이후 2개의 DataFrame 객체를 생성한 후 join 메소드를 통해 데이터를 통합합니다. concat() 메소드와의 다른 점은 join() 메소드는 "가로" 방향으로 데이터를 통합합니다. 아래 코드는 concat() 코드의 실행 예시입니다. 인덱스 라벨을 지정하여 DataFrame 객체를 생성하고 데이터를 통합할 수도 있습니다 데이터를 통합할 때는 주의하실 점이 있습니다. 아래와 같이 칼럼이 일치하지 않는 경우 데이터가 NaN(결측치)로 바뀌는 문제가 발생할 수 있으므로 인덱스가 일치하는지 체크한 후 데이터 통합을 하면 ..
- [ Data Analystics/pandas ][Pandas] concat() 메소드를 사용하여 데이터 통합하기2024-01-08 10:28:07안녕하세요 이번 글에서는 pandas library를 사용하여 데이터 통합하는 방법을 알아보겠습니다. DB(데이터베이스)에 저장되어있는 2개 이상의 테이블을 조인하여 데이터를 통합하는 것과 유사하다고 이해해주시면 됩니다 ! 먼저 필요한 라이브러리를 불러와줍니다 pandas 라이브러리를 사용하므로 pandas 라이브러리를 import 해주도록 하겠습니다. import pandas as pd 이후 아래와 같이 임의의 데이터프레임 객체 2개를 생성합니다 append() 메소드를 사용하면 df1에 df2의 DataFrame 객체를 병합할 수 있다고 나와있어서 코드를 실행했는데 아래와 같은 에러가 발생했습니다 !.. 이때는 당황하지 않고 공식문서로 가주도록 합니다 공식 문서에 나와있는 내용을 보니 pandas 1..