자신에게 친절할 것 :)
728x90
반응형

전체 글 151

[EDA] 값 추가, 문자열 필터링 .str.contains(''), 값 분리, .str.split()

# 코드잇 데이터 사이언스 강의 듣는 중- .sum(axis='colums') - 전처리 단계에서 필요한 변수 생성할 때 유용함. 일일히 행렬 값을 전부 치지 않아도 됨. df.sum(axis='columns')#변수에 넣어주면 계산하기가 더 편해짐df['Total']= df.sum(axis='columns') --> then, 값이 마지막 열로 바로 추가됨.        - 직선 그래프는 y='' 만 넣어주면 됨. df.plot(y='Total') --> 명백하게 해가 지날 수록 tv 시청률이 줄어드는 것을 확인 가능         - 지상파/종편 비교 하고 싶으면, 각 값을 생성해주면 됨.df['Group1'] = df.loc[:,'KBS':'SBS'].sum(axis='columns')df['Gro..

Data Science/Pandas 2024.06.07

[EDA] 적용 예제

# 코드잇 데이터 사이언스 강의 듣는 중 - 생각보다 어떤 걸 적용해야 할지가 바로 떠오르지 않았고 적용하면서도 왜이래.. 하면서 생각보다 시간이 오래걸렸다.- 그래서 해설을 정리해 두려고 한다.  - 문제는 데이터에서 이 답들을 뽑아 내는 것이었다. - 정답은 맞췄지만, 시간이 너무 오래 걸렸고, 가장 효율적인 방법으로 찾아내진 못한 것 같다. 그래서 이번 포스팅을 적는다.  - 일단 데이터를 불러오고, 살펴보기import pandas as pdimport seaborn as snstitanic = pd.read_csv('data/titanic.csv')titanic.head()#데이터 타입 확인titanic.info() 1) 타이타닉의 승객은 30대와 40대가 가장 많다. --> 히스토그램- 나는 바..

Data Science/Pandas 2024.06.07

[Statistics] 군집 분석 cluster analysis, sns.clustermap()

# 코드잇 데이터 사이언스 강의 듣는 중 - 서로 관련이 있는 집단들을  묶어서 분석하는 것- sns.clustermap() - 강의에서는 상관이 있는 것들을 묶는 예제를 보여줬는데, 실제로는, 상관.... 보다는 변수들 간의 관계나 값의 분포 차이에 따라서 군집을 나눔.  + 군집분석은 data driven 이기 때문에 일반화 하기가 어렵다는 문제가 있지만, 확진적 요인 분석 CFA 과 잠재 프로파일분석 LPA으로 논문을 썼기 때문에 흥미로운 결과를 많이 뽑아낼 수 있다고 생각하는 편이다.  - 필요한 칼럼만 분리하고.interests = df.loc[:, 'History':'Pets']interests.head() - 상관을 아예 변수에 넣음.corr = interests.corr()corr - 역사..

Statistics 2024.06.05

[EDA] 가설 검정 전에 data set을 살피는 단계

# 코드잇 데이터 사이언스 강의 듣는 중  - data set을 탐색적으로 살펴보면서 일반적인 패턴을 확인하는 것으로, 데이터 분석의 첫 단계.- row, column의 의미나, 분포, 연관성 등을 다양한 각도에서 확인하는 것. - 공식이 따로 있는 것이 아니라 데이터를 살펴보는 모든 것을 의미함. - 대개 시각적 기법을 가장 많이 사용함.  ++ 즉, 데이터 분석의 초기 단계로,패턴, 이상치와 관례 등 기술적 통계부터 시각화를 사용해서 확인하는 것을 의미함. - 데이터의 특성과, 이후 분석과 가설 검정에 대한 정보를 제공함. - 그니깐 약간 말그대로 탐색적임. - 가설 검정 전 단계에 이걸로 뭘 할 수 있을 지 고민하는 단계임.  => 그러니깐 기본적으로 표본이 어떤 지.. 결측지는 어떤지, 어디로 치..

Data Science/Pandas 2024.06.03

[Statistics] 상관 계수, .corr(), scatterplot(), regplot(), sns.heatmap()

# 코드잇 데이터 사이언스 강의 듣는 중  - 여러 상관 계수가 있지만, 피어슨 Pearson 상관 계수를 많이 씀. 1) 범위: -1 2)  피어슨 Pearson 상관 계수 = 0 --> 상관이 없음. 3)  피어슨 Pearson 상관 계수 = +- 1 --> 강한 상관4) 1 > 피어슨 Pearson 상관 계수 > 0 : 정적 상관; x가 커지면 y가 증가        5) -1 피어슨 Pearson 상관 계수        ++++ --> 피어슨 상관계수 --> x,y의 공분산 값을 각각의 표준편차의 곱으로 나눠준 것  공분산 covariance> --> 각 값의 편차끼리 곱한 값을 n수로 나누어 준 것으로 변수의 관계의 방향성과 강도를 측정할 때 사용 가능함.  - 즉, 같이 움직이는 경향성임. 편..

Statistics 2024.06.02

[Statistics] mean, median, Q1, Q3, outlier, mode, .describe()

# 코드잇 데이터 사이언스 강의 듣는 중 - data에 따라서 대표치를 어떤 것으로 볼 지가 달라짐.- outlier가 크면, median은 mean보다 outlier의 영향을 덜 받기 때문에 사용- but, median은 전체 값의 분포가 달라져도 같을 수 있지만, mean은 값에 영향을 받기 때문에 median이 다 같으면 mean 더 좋은 대표치가 됨.  --> numerical(수치형) data는 mean, median, mode를 구할 수 있음 - but categorical(범주형) data는 mean, median을 구할 수 없기에 mode가 대표치가 됨.  + 수치형 데이터는 1) 이산형데이터 (값이 정확히 떨어짐; 오늘 마신 아메의 갯수) 와2) 연속형 데이터 (값이 정확하지 않음; 추정..

Statistics 2024.06.02

[Seaborn] dist plot, violin plot, 등고선, lm plot, cat plot, strip plot

# 코드잇 데이터 사이언스 강의 듣는 중  - seaborn을 쓰면 matplotlib 보다 더 적은 코드로 근사한 그래프를 그릴 수 있음. - statisctical data visualizaton 통계 기반 데이터 시각화 툴임. - 간편하게 근사한 그래프를 원하면 seaborn을 쓰고 원하는대로 커스텀해서 그래프를 만들고 싶으면 matplotlib을 쓰면 됨.    - seaborn 라이브러리에서 KDE를 하여 그래프를 매끄럽게 조정할 수 있음.- 이게 뭐지 했었는데..?- 심리통계에서도 매일 쓰는 것이 확률밀도 함수였지만, 그 자체보다는 유의확률에 따라 기각 여부에만 집중했었기 때문에 그냥 조정된 KDE그래프만 봐서 모른 것이었음. 그것도 그냥 데이터가 무한대라고 가정하고 그래프를 추출하는 것이다라..

[Seaborn] Macbook Air의 jupyter notebook에서 seaborn import 에러

#코드잇 데이터 사이언스 강의 듣는 중  그 전에 다운도 안 하신 분들은 먼저 깔으시면 됨. #다운로드!conda install --yes seaborn#불러오기import seaborn as snsPandas와의 호환 문제 일 수도 있지만,우선 Macbook Air의 경우 1.16.0은 다운을 받을 수가 없었고, 오늘(24.06.01) 자로 업데이트가 가능한 최신 seaborn은 0.13.2라서 그걸로 다운 받았다.  코드잇 강의에는 0.9.0 버전을 받도록 시키시는데.. ㅎimport error가 계속 뜬다..ㅎ 1) 일단 Jupyter notebook을 끄고,2) terminal을 열고3) pip uninstall seaborn 으로 우선 삭제를 한 다음에pip uninstall seaborn4) ..

[Statistics] PDF 확률 밀도 함수, KDE kernel Density Estimation

# 코드잇 데이터 사이언스 강의 듣는 중  - 확률밀도함수: 값들이 어떻게 분포되어 있는지 보여주는 것. - 분포는 히스토그램과 비슷함. 히스토그램 막대를 무한으로 늘리면 나타나는 것과 비슷함. - but, 히스토그램은 각 구간마다 값이 몇 개 있는지 셌다면, PDF는 각 구간이 전체에서 차지하는 비중(확률)을 보는 것.   - 데이터 셋의 분포를 나타냄. - 특정 구간의 확률은 그래프 아래 그 구간의 면적과 동일함. - 그래프 아래의 모든 면적의 합 = 1 - 연속형 데이터에서 특정 값이 일어날 확률은 0%- 즉, 키가 174.5 일 확률은 0임. coz, 174.50000001 일 수도 있고, 몇 명을 모아도 저 값의 딱 떨어질 확률은 0에 가까움- 주사위 숫자나 동전 면의 확률과 달리,키, 몸무게,..

Statistics 2024.06.01

[통계와 시각화] 선/막대/원 그래프, 히스토그램, box plot, 산포도

#코드잇 데이터 사이언스 강의 듣는 중#데이터 사이언스 Toolkit  renewal 버전과 이전 데이터 시각화 강의가 섞인 정리 - numpy처럼 matplotlib을 메소드로 쓸 수도 있지만, Pandas 플랏이 어차피 plt를 끌어다가 쓰는 것이라서 더 간단하게 사용가능. import pandas as pdimport matplotlib.pyplot as pltsales_df = pd.DataFrame({ 'quarter' : ['1Q', '2Q', '3Q', '4Q'], 'revenue' : [1360, 2650, 2070, 4150], 'cost' : [1240, 1970, 1750, 2760]})sales_df#plt plot을 따로 이용plt.plot(sales_df['qua..

Statistics 2024.06.01
728x90
반응형