我是靠谱客的博主 酷炫未来,最近开发中收集的这篇文章主要介绍西南财经大学python期末考试_西南财经大学“新银行杯”数据科学竞赛总结与学习笔记,Mooplab,网,小结...,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Mooplab“新网银行杯”个人小结与学习笔记

一、前期准备

安装pycharm并配置环境

链接:

link

.

在pycharm中安装第三方库

1.在pycharm中安装:

File>>Other Settings>>Setting for new porjects>>Porject Interpreter 选择自己的环境,然后点右边的‘+’,搜索自己需要的包,然后下载就ok了。

2.在电脑终端安装:

有时候会出现一些异常情况,诸如下载失败、下载后依然显示没有这个库。这时候就需要在电脑终端下载:win+R>>输入cmd>>pip install +’ '(引号内为要添加的库)。

当然这里不是一定要选择pycharm作为编译环境,诸如此类的软件还有很多。

二、个人小结

比赛链接:

link

.

由于是第一次参加此类数据挖掘比赛,拿到题目看完之后并没有什么实际的想法,先是去参考了一下往届比赛获奖者的总结分析,这里是2018年“新网银行杯”第二名的总结与分享:链接:

link

.

之后像无头苍蝇一样去粗略学习了

SVM支持向量机

逻辑回归

等模型,但后来发现系统的学习这些模型的概念帮助并不大,我们这里需要的仅仅是引用一下这些模型的代码(基本只有几行代码)。

在此过程中学长提供了很多帮助,其中一个是随机生成5676个数(0或1),虽然只是一个简单的代码,但是它告诉了我们这个题需要我们提交的是什么样的答案(格式,数值…)。下面是具体代码:

import numpy as np

import pandas as pd

import random

a=[]

for i in range(1,5767):

a.append(random.randint(0,1))

a = np.array(a)

# prepare for data

data = a.reshape((5766,1))

print(data)

data_df = pd.DataFrame(data)

# change the index and column name

data_df.columns = ['target']

data_df.index = list(range(1,5767))

# create and writer pd.DataFrame to excel

writer = pd.ExcelWriter('Save_Excel.xlsx')

data_df.to_excel(writer,'page_1',float_format='%.5f') # float_format 控制精度

writer.save()

第一次开会过后,总算对思路有了一些更正确的理解,对于此类问题建模是比较简单的一个环节,具体操作为:调用pandas、numpy库读入数据,把字典型转化为矩阵,然后进行训练和预测。而之后进行的数据处理才是重中之重,并且经过实验,模型对于最终答案的影响结果不是很明显,即使是有比较好的模型,也可以在数据处理之后的环节来进行调试。下面是具体代码

import pandas as pd

import numpy as np

from sklearn.neighbors import KNeighborsClassifier

from sklearn.svm import SVC

from sklearn.linear_model import Perceptron

from sklearn.linear_model import LogisticRegression

from sklearn.tree import DecisionTreeClassifier

from sklearn.ensemble import RandomForestClassifier

# 读取数据

dfx_train = pd.read_csv(r"C:Userswin10Desktop不对缺失值做处理fx_train_nan.csv")

dfx_test = pd.read_csv(r"C:Userswin10Desktop不对缺失值做处理fx_test_nan.csv")

dfy_train = pd.read_csv(r"C:Userswin10Desktopmooplab比赛数据y_train.csv")

#print(dfx_train)

# 将数据转化为矩阵型

x_train = np.array(dfx_train)

x_test = np.array(dfx_test)

y_train = np.array(dfy_train['target'])

#下面是很多种模型

# KNN

#==================================

#knn = KNeighborsClassifier()

#knn.fit(x_train,y_train)

#y_test=knn.predict(x_test)

#print(len(y_test))

#==================================

# SVM

#==================================

#from sklearn.svm import SVC

#model = SVC(kernel='rbf', probability=True)#probability=False时,没办法调用 model.predict_proba()函数

#model.fit(x_train,y_train)

#pre = model.predict_proba(C)

#print(pre)

#y_test = model.predict(x_test)

#print(y_test)

#pnn

#from sklearn.linear_model import Perceptron

#ppn = Perceptron()

#ppn.fit(x_train, y_train)

#y_test = ppn.predict(x_test)

#==================================

# 随机森林分类

forest = RandomForestClassifier(criterion='entropy', n_estimators=10, random_state=1, n_jobs=2)

forest.fit(x_train, y_train)

y_test = forest.predict(x_test)

# 导出

#==================================

data_df = pd.DataFrame(y_test)

# change the index and column name

data_df.columns = ['target']

data_df.index = list(range(0,5767))

# create and writer pd.DataFrame to excel

writer = pd.ExcelWriter(r'C:Userswin10Desktopmooplab结果y_test.xlsx')

data_df.to_excel(writer,'page_1',float_format='%.5f') # float_format 控制精度

writer.save()

有了模型和代码之后,就进入重头戏数据分析和处理了,但是目前为止进度还是很慢,只把两个表合并了。之前对为-99的特征值进行处理之后的效果并不好,之后考虑了很多种小的变动,得分也不理想,目前准备把数据按8:2的比例分为两部分进行交叉验证,找出一些特征值。具体代码部分可以参考另一位不愿透露姓名的同学的文章,非常的详细:

链接:

link

.

最后

以上就是酷炫未来为你收集整理的西南财经大学python期末考试_西南财经大学“新银行杯”数据科学竞赛总结与学习笔记,Mooplab,网,小结...的全部内容,希望文章能够帮你解决西南财经大学python期末考试_西南财经大学“新银行杯”数据科学竞赛总结与学习笔记,Mooplab,网,小结...所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部