본문 바로가기

Big Data/DataAnalysis & Manipulate33

ANOVA 예제 각 유형의 ANOVA에 대한 예시 일원배치 ANOVA (One-Way ANOVA) 시나리오: 세 가지 다른 공부 방법(A, B, C)을 사용하여 시험을 준비한 학생들의 성적을 비교하려고 합니다. 가설: 적어도 한 그룹의 평균 성적이 다른 그룹과 다르다. 데이터: 각 그룹별로 여러 학생들의 시험 성적이 포함된 데이터셋. 예제 아래는 세 가지 다른 공부 방법(A, B, C)을 사용하여 시험을 준비한 학생들의 성적을 비교하기 위한 일원배치 ANOVA를 수행하는 파이썬 코드 예제입니다. 이를 위해 scipy.stats 라이브러리를 사용합니다. import numpy as np from scipy.stats import f_oneway # 각 공부 방법별 시험 성적 데이터 생성 group_a = np.array(.. 2023. 8. 10.
정규분포 표현과 통계적 계산 정규 분포 표현 scipy.stats 모듈은 SciPy 라이브러리의 일부로, 다양한 확률 분포와 통계 관련 기능을 제공하는 모듈입니다. 정규 분포를 표현하고 다양한 통계 계산을 수행하는 데 사용할 수 있습니다. 아래는 scipy.stats 모듈을 사용하여 정규 분포를 표현하는 예제 코드입니다. 먼저, 필요한 라이브러리를 가져오고 정규 분포를 생성하는 예제를 살펴보겠습니다. import numpy as np import matplotlib.pyplot as plt from scipy.stats import norm # 정규 분포의 평균과 표준편차 mu = 0 sigma = 1 # 정규 분포 객체 생성 normal_dist = norm(mu, sigma) # 확률 밀도 함수(Probability Densit.. 2023. 8. 9.
t-검정 수행 Python에서 t-검정을 수행하는 방법은 scipy.stats 라이브러리를 사용하는 것이 일반적입니다. 다음은 단일 그룹과 두 개의 그룹에 대해 t-검정을 수행하는 간단한 예제 코드입니다. 단일 그룹에 대한 t-검정 가정: 어떤 제품의 평균 수명이 1000시간인지 확인하려고 합니다. 표본 10개를 수집하여 수명을 측정했습니다. import numpy as np from scipy.stats import ttest_1samp # 표본 데이터 sample_data = np.array([980, 1005, 990, 1010, 995, 1002, 990, 1015, 1008, 990]) # 귀무가설: 평균 수명이 1000시간인 경우 null_mean = 1000 # t-검정 수행 t_statistic, p_v.. 2023. 8. 9.
Tukey 이상치 검출 Tukey outlier detection Tukey outlier detection은 통계학에서 이상치(outlier)를 탐지하는 방법 중 하나입니다. 이 방법은 John Tukey에 의해 개발되었으며, 데이터셋에서 통계적으로 중요한 이상치를 식별하는 데 사용됩니다. 이 방법은 데이터의 분포를 기반으로 이상치를 식별하며, 주로 사분위범위(IQR, Interquartile Range)를 사용합니다. 사분위범위는 데이터를 정렬한 후에 중앙값(median)을 기준으로 데이터를 4분위로 나눈 것을 의미합니다. Tukey outlier detection의 기본 원리는 다음과 같습니다: 데이터를 정렬합니다. 1사분위수(Q1)와 3사분위수(Q3)를 계산합니다. 이는 데이터의 하위 25%와 상위 75%를 의미합니다... 2023. 8. 9.
numpy histogram() np.histogram 함수는 NumPy 라이브러리에서 제공하는 히스토그램을 생성하는 함수입니다. 히스토그램은 데이터의 분포를 시각화하는데 사용되며, 데이터를 일정한 간격으로 나누어 각 구간의 빈도를 보여줍니다. 이를 통해 데이터의 패턴과 분포를 쉽게 파악할 수 있습니다. np.histogram 함수는 주어진 데이터를 특정 구간(빈)으로 나누어 각 구간의 빈도를 계산합니다. 이를 이용하여 도수 분포표를 생성할 수 있습니다. 아래는 np.histogram 함수를 사용하여 도수 분포표를 만드는 과정과 도수 분포표에 포함되는 항목들의 설명입니다. 데이터 준비: 분석하고자 하는 데이터를 준비합니다. 계급(빈) 설정: 히스토그램을 만들기 위해 데이터를 일정한 구간(빈)으로 나눕니다. 이 구간들을 계급이라고 합니다.. 2023. 8. 8.
DataFrame 인덱싱 DataFrame 인덱싱에서 일반적인 인덱싱과 팬시 인덱싱(fancy indexing)의 차이를 비교해드릴게요. 아래 예시를 통해 설명하겠습니다. 가상의 DataFrame을 생성하고 예시를 들겠습니다: import pandas as pd data = {'A': [1, 2, 3, 4, 5], 'B': [10, 20, 30, 40, 50], 'C': [100, 200, 300, 400, 500]} df = pd.DataFrame(data, index=['one', 'two', 'three', 'four', 'five']) 일반적인 인덱싱 result_standard = df['A'] result_standard는 다음과 같이 'A' 열의 모든 값을 포함한 Series가 됩니다: one 1 two 2 thre.. 2023. 8. 8.
pandas와 numpy의 var()과 ddof ddof와 분산(variance) ddof (Degrees of Freedom): 통계학에서 자유도(degree of freedom)를 나타내는 개념으로, 샘플의 크기에 따라 분산을 얼마나 정확하게 추정해야 하는지 결정하는데 사용됩니다. 분산(variance): 데이터 값이 평균으로부터 얼마나 퍼져있는지를 나타내는 지표입니다. 분산은 데이터 값과 평균 간의 차이를 제곱하여 평균한 값입니다. Pandas의 var 함수 pandas.Series.var(): 시리즈 데이터의 분산을 계산합니다. 기본값: ddof의 기본값은 1로, 즉 불편 추정을 사용합니다. 사용 예시: import pandas as pd data = [10, 20, 30, 40, 50] series = pd.Series(data) # 불편 추.. 2023. 8. 8.
vectorize, apply, map DataFrame에서 사용되는 vectorize, apply, map 함수의 특징과 장점을 설명해드리겠습니다. vectorize 함수 특징: Numpy 배열의 벡터화 연산을 DataFrame의 열에 적용할 수 있도록 도와줍니다. 장점: 반복문을 사용하지 않고 빠른 연산을 가능하게 해 줍니다. 예제: import pandas as pd import numpy as np df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) vectorized_func = np.vectorize(lambda x: x * 2) df['A'] = vectorized_func(df['A']) print(df) apply 함수 특징: DataFrame의 열 또는 행에 함수를 적용할 수 있습니다.. 2023. 8. 8.
df.describe() df.describe() 함수는 데이터프레임(DataFrame)의 간단한 통계 요약 정보를 제공하는 기능입니다. Pandas 라이브러리에서 제공되며, 주로 숫자형 데이터의 요약 통계를 살펴보거나 데이터의 분포를 파악하는 데 사용됩니다. df.describe() 함수는 다음과 같이 호출됩니다: df.describe() 여기서 df는 데이터프레임 객체의 이름을 나타냅니다. df.describe() 함수는 기본적으로 다음과 같은 통계 정보를 반환합니다: 개수(count): 각 열의 비어 있지 않은(non-null) 값의 개수를 보여줍니다. 평균(mean): 각 열의 평균 값을 계산하여 보여줍니다. 표준편차(std): 각 열의 표준편차를 계산하여 보여줍니다. 최소값(min): 각 열의 최솟값을 보여줍니다. 25.. 2023. 8. 7.