WIDA/DACON 분류-회귀

[DACON/김세연] 파이썬을 이용한 EDA

알 수 없는 사용자 2023. 4. 7. 14:08
#1 import pandas as pd
#2 import numpy as np
#3 import matplotlib.pyplot as plt
#4 import seaborn as sns

#5 df=pd.read_csv("C:/Users/lucy8/PycharmProjects/test2/DSOB/train.csv")
#6 print(df.head(3))

#7 print(df.shape)
#8 print(df.isnull().sum())
#9 print(df.info())

6행의 출력값

df 파일에 할당된 데이터 중에 3개를 뽑아, 데이터의 형태 등을 파악함 

 

 

7행,8행,9행의 출력값

좌(7행,8행)는 데이터의 개수를 행렬로 알려주고, null값이 있는지 알려줌 (null값이 있다면, 해결해야함 (평균,삭제 등))

우(9행)는 데이터 타입을 알려줌

 

#10 num_type = df['type'].unique()
#11 print(num_type)
#12 print(len(num_type))

#13 fiberid_type = df['fiberID'].unique()
#14 print(fiberid_type)
#15 print(len(fiberid_type))

#16 numerical_columns=['psfMag_u','psfMag_g','psfMag_r','psfMag_i',	'psfMag_z','fiberMag_u','fiberMag_g','fiberMag_r','fiberMag_i','fiberMag_z','petroMag_u','petroMag_g','petroMag_r','petroMag_i','petroMag_z','modelMag_u','modelMag_g']

#17 corr = df[numerical_columns].corr(method = 'pearson')
print(corr)

#18 fig = plt.figure(figsize = (12, 8))
ax = fig.gca()

#19 sns.set(font_scale = 1.5)  # heatmap 안의 font-size 설정
heatmap = sns.heatmap(corr.values, annot = True, fmt='.2f', annot_kws={'size':15},
                      yticklabels = numerical_columns, xticklabels = numerical_columns, ax=ax, cmap = "RdYlBu")
plt.tight_layout()

plt.show

#20 plt.boxplot(df['fiberMag_u'])
#21 plt.boxplot(df['petroMag_u'])

plt.show()

#22 numerical_columns=['psfMag_u','psfMag_g','psfMag_r','psfMag_i','psfMag_z','fiberMag_u','fiberMag_g','fiberMag_r','fiberMag_i','fiberMag_z','petroMag_u','petroMag_g','petroMag_r','petroMag_i','petroMag_z','modelMag_u','modelMag_g']

fig =plt.figure(figsize = (20, 20))
ax = fig.gca()

df[numerical_columns].hist(ax=ax)
plt.show()

17행 출력값

유의미한 컬럼들을 따로 모은 후, 상관관계를 -1부터 1까지 나타내는 시각화 

19행 출력값

상관관계를 시각화 한 히트맵

 

빨강값과 파랑값을 갖는 컬럼의 박스플롯 

 

20행 출력값
21행 출력값

 

22행 출력값