본문 바로가기

전체 글20

[Scraping] 웹 스크래핑이란? 출처: https://www.parsehub.com/blog/what-is-web-scraping/ What is Web Scraping and What is it Used For? | ParseHub Web scraping is one of the most efficient and useful ways to extract data from a website, especially in 2023! Some websites can contain a very large amount of invaluable data. Stock prices, product details, sports stats, company contacts,.. 2023. 8. 29.
[Machine Learning] 데이터 전처리(2) - Imbalanced class(2) 데이터 전처리(2): https://insighted-h.tistory.com/20 [Machine Learning] 데이터 전처리(2) - Imbalanced class(1) 데이터 전처리(1): https://insighted-h.tistory.com/16 [Machine Learning] 데이터 전처리(1) - 결측치 처리(1) 데이터 분석을 하기 위해서 데이터의 전처리는 필수적이다. 데이터들을 수집해서 나온 가공되지 않 insighted-h.tistory.com 이전 포스팅에서 imbalanced class 문제를 해결하는 이론적 방법에 대해서 알아보았다. 이번 포스팅에서는 실제 데이터를 가지고 방법에 따라 과연 어느 정도 효과가 있는지 알아보려고 한다. Credit Card Fraud Detec.. 2023. 8. 19.
[Machine Learning] 데이터 전처리(2) - Imbalanced class(1) 데이터 전처리(1): https://insighted-h.tistory.com/16 [Machine Learning] 데이터 전처리(1) - 결측치 처리(1) 데이터 분석을 하기 위해서 데이터의 전처리는 필수적이다. 데이터들을 수집해서 나온 가공되지 않은 데이터는 분석을 바로 할 수가 없는 상태이다. (결측치의 존재, 이상치의 존재, 여러 데이 insighted-h.tistory.com 이전 포스팅에서는 결측치를 다루는 방법에 대해서 알아보았다. 현실 데이터에서는 우리가 예측하고자 하는 클래스가 불균형할 때가 흔하다. 대표적인 예로 다음과 같은 상황이 있다. 신용카드 사기 탐지: 신용카드 거래에서 사기 거래는 정상적인 거래에 비해 매우 드문 케이스 스팸 메일 분류하기: 스팸 메일 vs 정상 메일 불량품 .. 2023. 8. 18.
[Machine Learning] 데이터 전처리(1) - 결측치 처리(2) [Machine Learning] 데이터 전처리(1) - 결측치 처리(1) 데이터 분석을 하기 위해서 데이터의 전처리는 필수적이다. 데이터들을 수집해서 나온 가공되지 않은 데이터는 분석을 바로 할 수가 없는 상태이다. (결측치의 존재, 이상치의 존재, 여러 데이 insighted-h.tistory.com 앞에서 결측치 처리 방법으로 크게 3가지 방법을 학습하였다. 그래서 실제로 얼마나 유의미한 차이가 있을까? 앞에서의 3가지 방법을 다음 데이터셋에 적용해서 비교해보았다. https://www.kaggle.com/c/spaceship-titanic Spaceship Titanic | Kaggle www.kaggle.com 위 데이터셋은 승객들이 정상적으로 다른 차원의 공간으로 보내졌을지(보내졌다면 True.. 2023. 6. 26.
[EDA Practice] Seaborn 설정 (rc) 데이터 시각화에 대해서 더 공부하다가 rc 설정을 알게 되었다. rc 설정은 사용자가 그래프 스타일을 커스터마이징할 수 있도록 하는 파라미터이다. 지금까지는 시각화를 위해서 적절한 그래프와 데이터를 선택했다면 rc 설정은 그래프 자체에 대한 스타일을 설정하여 결과적으로 가독성을 높여준다. sns.axes_style()을 통해 현재 그래프 스타일 설정을 확인해볼 수 있다. import seaborn as sns sns.axes_style() => {'axes.facecolor': '#EAEAF2', 'axes.edgecolor': 'white', 'axes.grid': True, 'axes.axisbelow': True, 'axes.labelcolor': '.15', 'figure.facecolor': '.. 2023. 6. 23.
[Machine Learning] 데이터 전처리(1) - 결측치 처리(1) 데이터 분석을 하기 위해서 데이터의 전처리는 필수적이다. 데이터들을 수집해서 나온 가공되지 않은 데이터는 분석을 바로 할 수가 없는 상태이다. (결측치의 존재, 이상치의 존재, 여러 데이터 타입의 혼재, ...) 만약 이러한 데이터를 가지고 바로 모델링을 한다면 데이터의 잡음으로 인해 우리가 모델의 결과가 굉장히 안 좋을 것이다. 혹은 모델이 아예 학습을 하지 못할 수도 있을 것이다. 그러면 가장 선행되어야 하는 전처리 작업은 무엇일까? 그것은 바로 결측치 (Missing values)를 처리하는 것이다. 결측치는 다음과 같이 크게 세 가지 유형으로 나눌 수 있다. 1. MCAR(Missing Completely At Random) 데이터가 missing난 이유가 데이터와 무관하게 발생한 것을 말한다. .. 2023. 6. 22.
[Pandas] 판다스 결측치 처리 데이터 분석 전처리에서 가장 중요한 작업 중 하나는 바로 결측치를 처리하는 일이다. 데이터셋에는 결측치가 포함되어 있는 경우가 많은데, 판다스는 결측치 처리를 위해 여러 가지 편리한 함수들을 제공하고 있다. 1. NaN 판다스에서는 결측치를 다음과 같이 NaN으로 표시한다. df = pd.DataFrame( np.random.randn(5, 3), index=["a", "c", "e", "f", "h"], columns=["one", "two", "three"], ) df["four"] = "bar" df["five"] = df["one"] > 0 df => onetwothreefourfive a-0.4058251.266212-0.629770barFalse c0.897918-1.657066-0.66026.. 2023. 6. 19.
[EDA Practice] Subplot 그리기 이전 포스팅에서 matplotlib이나 seaborn을 통해서 그래프를 생성하면 자동으로 AxesSubplot 객체가 생성되었다. AxesSubplot은 Figure 객체에 포함된 객체이지만, 일반적으로는 하나밖에 생성이 안된다. 그러나, 데이터 시각화를 진행하다 보면, 아래처럼 여러 개의 그래프를 한 눈에 비교하고 싶을 때가 있다. matplotlib에서는 서브플롯을 그리기 위해 몇 가지의 메서드를 제공한다. 1. add_subplot() 첫 번째는 바로 Figure 객체의 add_subplot() 메서드이다. add_subplot()은 파라미터로 row, col, index를 받는다. index는 서브플롯이 생성되는 위치로, 왼쪽 위에서부터 1이다. 아래 코드는 nrows=3, ncols=2의 빈 서.. 2023. 2. 9.
[EDA Practice] Figure, Axes 객체 Matplotlib은 데이터 시각화에 필수적인 패키지이다. 이러한 그래프를 그릴 수 있는 이유는 Matplotlib만의 특별한 클래스들이 존재하기 때문이다. 바로 Figure와 Axes 클래스이다. Matplotlib의 그래프를 담을 수 있는 Figure 클래스와 Axes 클래스를 알아보자. 1. Figure 클래스 일반적인 방식으로 plt.figure()를 수행하고 객체 타입을 확인한 결과이다. fig = plt.figure() type(fig) => matplotlib.figure.Figure 코드에서 볼 수 있듯이 matplotlib.figure.Figure 객체가 생성되는 것을 볼 수 있다. Figure 객체는 그래프 요소를 담을 수 있는 최상위 컨테이너이다. 그래프를 담을 수 있는 직사각형의 객.. 2023. 2. 9.