kaggle竞赛入门整理
1、Bike Sharing Demand
kaggle: https://www.kaggle.com/c/bike-sharing-demand
目的:根据日期、时间、天气、温度等特征,预测自行车的租借量
处理:1、将日期(含年月日时分秒)提取出年,月, 星期几,以及小时
2、season, weather都是类别标记的,利用哑变量编码
算法模型选取:
回归问题:1、RandomForestRegressor
2、GradientBoostingRegressor
# -*- coding: utf- -*-
import csv
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt train = pd.read_csv('data/train.csv')
test = pd.read_csv('data/test.csv') # 选取特征值
selected_features = ['datetime', 'season', 'holiday',
'workingday', 'weather', 'temp', 'atemp', 'humidity', 'windspeed'] #X_train = train[selected_features]
Y_train = train["count"]
result = test["datetime"] # 特征值处理
month = pd.DatetimeIndex(train.datetime).month
day = pd.DatetimeIndex(train.datetime).dayofweek
hour = pd.DatetimeIndex(train.datetime).hour
season = pd.get_dummies(train.season)
weather = pd.get_dummies(train.weather) X_train = pd.concat([season, weather], axis=)
X_test = pd.concat([pd.get_dummies(test.season), pd.get_dummies(test.weather)], axis=)
X_train['month'] = month
X_test['month'] = pd.DatetimeIndex(test.datetime).month
X_train['day'] = day
X_test['day'] = pd.DatetimeIndex(test.datetime).dayofweek
X_train['hour'] = hour
X_test['hour'] = pd.DatetimeIndex(test.datetime).hour
X_train['holiday'] = train['holiday']
X_test['holiday'] = test['holiday']
X_train['workingday'] = train['workingday']
X_test['workingday'] = test['workingday']
X_train['temp'] = train['temp']
X_test['temp'] = test['temp']
X_train['humidity'] = train['humidity']
X_test['humidity'] = test['humidity']
X_train['windspeed'] = train['windspeed']
X_test['windspeed'] = test['windspeed'] from sklearn.ensemble import *
clf = GradientBoostingRegressor(n_estimators=, max_depth=)
clf.fit(X_train, Y_train)
result = clf.predict(X_test)
result = np.expm1(result) df=pd.DataFrame({'datetime':test['datetime'], 'count':result})
df.to_csv('results1.csv', index = False, columns=['datetime','count']) from sklearn.ensemble import RandomForestRegressor
gbr = RandomForestRegressor()
gbr.fit(X_train, Y_train) y_predict = gbr.predict(X_test).astype(int) df = pd.DataFrame({'datetime': test.datetime, 'count': y_predict})
df.to_csv('result2.csv', index=False, columns=['datetime', 'count'])
#predictions_file = open("RandomForestRegssor.csv", "wb")
#open_file_object = csv.writer(predictions_file)
#open_file_object.writerow(["datetime", "count"])
#open_file_object.writerows(zip(res_time, y_predict))
2、Daily News for Stock Market Prediction
通过历史数据:包含每日点击率最高的25条新闻,与当日股市涨跌,来预测未来股市涨跌
方法一:
1、将25条新闻合并成一篇新闻,然后对每个单词做预处理(去掉特殊字符,含数字的单词,删除停词,变成小写,取词干),然后用TF-IDF提取特征,用SVM训练
2、用word2vec提取特征
具体实现:
https://github.com/yjfiejd/News_predict
3、
kaggle竞赛入门整理的更多相关文章
- Kaggle竞赛入门(二):如何验证机器学习模型
本文翻译自kaggle learn,也就是kaggle官方最快入门kaggle竞赛的教程,强调python编程实践和数学思想(而没有涉及数学细节),笔者在不影响算法和程序理解的基础上删除了一些不必要的 ...
- Kaggle竞赛入门:决策树算法的Python实现
本文翻译自kaggle learn,也就是kaggle官方最快入门kaggle竞赛的教程,强调python编程实践和数学思想(而没有涉及数学细节),笔者在不影响算法和程序理解的基础上删除了一些不必要的 ...
- 《Python机器学习及实践:从零开始通往Kaggle竞赛之路》
<Python 机器学习及实践–从零开始通往kaggle竞赛之路>很基础 主要介绍了Scikit-learn,顺带介绍了pandas.numpy.matplotlib.scipy. 本书代 ...
- 《机器学习及实践--从零开始通往Kaggle竞赛之路》
<机器学习及实践--从零开始通往Kaggle竞赛之路> 在开始说之前一个很重要的Tip:电脑至少要求是64位的,这是我的痛. 断断续续花了个把月的时间把这本书过了一遍.这是一本非常适合基于 ...
- kaggle竞赛分享:NFL大数据碗(上篇)
kaggle竞赛分享:NFL大数据碗 - 上 竞赛简介 一年一度的NFL大数据碗,今年的预测目标是通过两队球员的静态数据,预测该次进攻推进的码数,并转换为该概率分布: 竞赛链接 https://www ...
- 如何使用Python在Kaggle竞赛中成为Top15
如何使用Python在Kaggle竞赛中成为Top15 Kaggle比赛是一个学习数据科学和投资时间的非常的方式,我自己通过Kaggle学习到了很多数据科学的概念和思想,在我学习编程之后的几个月就开始 ...
- 初窥Kaggle竞赛
初窥Kaggle竞赛 原文地址: https://www.dataquest.io/mission/74/getting-started-with-kaggle 1: Kaggle竞赛 我们接下来将要 ...
- (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO
http://www.cnblogs.com/sxiszero/p/3618737.html 下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年 ...
- [刷题]算法竞赛入门经典 3-12/UVa11809
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-4/UVa11809:Floating-Point Numbers 代码: //UVa11 ...
随机推荐
- Redux 学习(1) ----- Redux介绍
Redux 有三个基本的原则: 1,单一状态树,redux 只使用一个javascript 对象来保存整个应用的状态. 状态树样式如下: const state = { count: 0 } 2,状态 ...
- 将自己的ubuntu18.04打包成镜像
将自己的ubuntu18.04打包成镜像 2018年11月10日 10:40:06 舌耳 阅读数:1590 先下载remastersys wget ftp://ftp.gwdg.de/pub/linu ...
- winserver 2008 R2服务器安装IIS
winserver 2008 R2 IIS7 安装IIS 打开服务器管理器 选择“角色”,右击添加角色 点击“下一步” 勾选”Web服务器(IIS)“,点击”下一步“ 勾选”常见Http功能.应用程序 ...
- IntelliJ cannot log in to GitHub上传github报错解决
重装系统,新装的Intellij IDEA上新建的项目上传github失败,报错: invalid authentication token ... 此处多为本地git用户的用户名/邮箱,与之前设置的 ...
- CodeForces 589B-Layer Cake-暴力模拟
刚看到这个题的想法是建图搜路,写出来了才发现这个做法不行,不能把每一个矩形看成不可分的点,因为最终的矩形可能两条边出现在不同矩形里. 后来看了题解才明白直接暴力就行.关键是明白最终的矩形两条边都在所给 ...
- 【XSY2772】数列 特征多项式 数学
题目描述 给你一个数列: \[ f_n=\begin{cases} a^n&1\leq n\leq k\\ \sum_{i=1}^k(a-1)f_{n-i}&n>k \end{c ...
- Django 调用报错 " ImportError: Couldn't import Django. "
系统炸了导致不得已重装 安装 Django后 利用ORM 创建表的时候报错 Traceback (most recent call last): File "manage.py", ...
- Apache 跟踪用户会话
打开usertrack_module LoadModule usertrack_module modules/mod_usertrack.so 配置跟踪选项 <IfModule usertrac ...
- 【Luogu4781】【模板】拉格朗日插值
[Luogu4781][模板]拉格朗日插值 题面 洛谷 题解 套个公式就好 #include<cstdio> #define ll long long #define MOD 998244 ...
- js获取元素位置和style的兼容性写法
今天说一下js获取元素位置和style的方法.当然不只是element.style那么简单.. 主角:getBoundingClientRect,getClientRects,getComputedS ...