天池新人赛数据挖掘

数据挖掘大作业

|

姓名 学号
段阳阳 20185111075
王浩 20185111045
贾德智 20185111076
周成成 20185111033
乔伟 20185111046
刘宗敏 20185111006

数据读取

import pandas as pd
import numpy as np
#train= np.loadtxt(‘zhengqi_train.txt’,delimiter=’\t’)#导入数据
train=pd.read_csv(‘zhengqi_train.txt’,sep=’\t’)
test=pd.read_csv(‘zhengqi_test.txt’,sep=’\t’)
#test=np.loadtxt(‘zhengqi_test.txt’,delimiter=’\t’’)
train_x=train.drop([‘target’],axis=1)
all_data = pd.concat([train_x,test])

数据分析与数据观察(可视化)

import seaborn
import matplotlib.pyplot as plt

for col in all_data.columns:
seaborn.distplot(train[col])
seaborn.distplot(test[col])
plt.show()

由上面的图可知v5,v17,v28,v22,v11,v9的训练集和测试集的分布基本上不一致,这对模型的泛化能力有很大的影响,所以应该剔除

all_data.drop([‘V5’,‘V17’,‘V28’,‘V22’,‘V11’,‘V9’],axis=1,inplace=True)

对删除后的数据进行投影,简化数据的维度

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
def meanX(dataX):
return np.mean(dataX,axis=0)#按列求均值

返回样本协方差的特征值

def variance(X):
average = meanX(XMat)
m, n = np.shape(XMat)
data_adjust = []
avgs = np.tile(average, (m, 1))#在列方向上重复average m次,在行上重复1次
data_adjust = XMat - avgs
covX = np.cov(data_a

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值