3-19心电图多分类预测task02
前言
主要在于熟悉数据集,了解数据集,对数据集进行验证来确定所获得数据集可以用于接下来的机器学习或者深度学习使用。
一、内容介绍
- 载入各种数据科学以及可视化库:
- 数据科学库 pandas、numpy、scipy;
- 可视化库 matplotlib、seabon;
- 载入数据:
- 载入训练集和测试集;
- 简略观察数据(head()+shape);
- 数据总览:
- 通过describe()来熟悉数据的相关统计量
- 通过info()来熟悉数据类型
- 判断数据缺失和异常
- 查看每列的存在nan情况
- 异常值检测
- 了解预测值的分布
- 总体分布概况
- 查看skewness and kurtosis
- 查看预测值的具体频数
二、代码示例
1.引入库
代码如下:
#coding:utf-8
#导入warnings包,利用过滤器来实现忽略警告语句。
import warnings
warnings.filterwarnings('ignore')
import missingno as msno
from pandas import DataFrame
import seaborn as sns
import numpy as np
import pandas as pd
from pandas import DataFrame, Series
import matplotlib.pyplot as plt
2.读入数据
代码如下(示例):
path = './data/'
train_data = pd.read_csv(path+'train.csv')
test_data = pd.read_csv(path+'testA.csv')
print('train data shape:',train_data.shape)
print('test data shape:',test_data.shape)
train_data.head().append(train_data.tail)
test_data.head().append(test_data.tail())
3.总览数据情况
train_data.describe()
train_data.info()
test_data.describe()
test_data.info()
4.判断数据缺失和异常
train_data.isnull().sum()
test_data.isnull().sum()
5.了解预测值的分布
train_data['label']
train_data['label'].value_counts()
import scipy.stats as st
y = train_data['label']
plt.figure(1); plt.title('Default')
sns.distplot(y, rug=True, bins=20)
plt.figure(2); plt.title('Normal')
sns.distplot(y, kde=False, fit=st.norm)
plt.figure(3); plt.title('Log Normal')
sns.distplot(y, kde=False, fit=st.lognorm)
sns.distplot(train_data['label']);
print("Skewness: %f" % train_data['label'].skew())
print("Kurtosis: %f" % train_data['label'].kurt())
train_data.skew(), train_data.kurt()
sns.distplot(train_data.kurt(),color='orange',axlabel ='Kurtness')
plt.hist(train_data['label'], orientation = 'vertical',histtype = 'bar', color ='red')
plt.show()
6.读入数据
import pandas_profiling
pfr = pandas_profiling.ProfileReport(train_data)
pfr.to_file("./example.html")