PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化...

全文下载链接:http://tecdat.cn/?p=29480

作者:Xingsheng Yang

1 利用 python 爬取链家网公开的租房数据;

2 对租房信息进行分析,主要对房租相关特征进行分析,并搭建模型用于预测房租点击文末“阅读原文”获取完整代码数据

相关视频

任务/目标

利用上海链家网站租房的公开信息,着重对月租进行数据分析和挖掘。

上海租赁数据

此数据来自 Lianjia.com.csv文件包含名称,租赁类型,床位数量,价格,经度,纬度,阳台,押金,公寓,描述,旅游,交通,独立浴室,家具,新房源,大小,方向,堤坝,电梯,停车场和便利设施信息。

属性:

名称:列表名称
类型:转租或全部租赁(全部)
床:卧室号码
价格
经度/纬度:坐标
阳台,押金(是否有押金政策),公寓,描述,旅游可用性,靠近交通,独立浴室,家具

新房源:NO-0,YES-1
面积:平方米
朝向:朝向窗户,南1,东南2,东-3,北4,西南-5,西-6,西北-7,东北8,未知-0
级别:房源层级, 地下室-0, 低层(1-15)-1, 中层(15-25)-2, 高层(>25)-3
停车场:无停车场-0,额外收费-1,免费停车-2
设施:设施数量

import pandas as pd

import numpy as np

import geopandas 

df = pd.read\_csv('lighai.csv', sep =',', encoding='utf\_8\_sig', header=None)

df.head()

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第1张图片

数据预处理

ETL处理,清理数据帧。

df_clean.head()

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第2张图片 

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第3张图片

探索性分析 - 数据可视化

plt.figure(figsize=(8, 6))

sns.distplot(df_clean.price, bins=500, kde=True)

plt.xscale('log') # Log transform the price

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第4张图片

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第5张图片

读取地理数据

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第6张图片

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第7张图片

plt.figure(figsize=(12, 12))

sns.heatmap(df_clean.corr(), square=True, annot=True, fmt = '.2f', cmap = 'vla

点击标题查阅往期内容

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第8张图片

线性回归和时间序列分析北京房价影响因素可视化案例

outside_default.png

左右滑动查看更多

outside_default.png

01

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第9张图片

02

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第10张图片

03

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第11张图片

04

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第12张图片

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第13张图片

模型构建

尝试根据特征预测价格。

y = df\_clean.log\_price

X = df\_clean.iloc\[:, 1:\].drop(\['price', 'log\_price'\], axis=1)

岭回归模型

ridge = Ridge()

alphas = \[0.0001, 0.001, 0.001, 0.01, 0.1, 0.5, 1, 2, 3, 5, 10\]

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第14张图片

4670aea2a3c3529b2c3b67f49aa0ab89.png 

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第15张图片

Lasso回归

8c28035936b27f1c797afece94650bb3.png

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第16张图片

coef.sort_values(ascending=False).plot(kind = 'barh')

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第17张图片

Random forest随机森林

rf\_cv.fit(X\_train, y_train)

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第18张图片

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第19张图片

XGBoost

xgb_model.loc\[30:,\['test-rmse-mean', 'train-rmse-mean'\]\].plot();

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第20张图片

xgb\_cv.fit(X\_train, y_train)

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第21张图片

0bb340ac5439b4ddb0cda232bc338b12.png 

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第22张图片

Keras神经网络

model.add(Dense(1, kernel_initializer='normal'))

# Compile model

model.compile(loss='mean\_squared\_error', optimizer='Adam')

model.summary()

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第23张图片

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第24张图片

kmeans聚类数据

kmeanModel = KMeans(n_clusters=k).fit(X) 

    kmeanModel.fit(X)     

    inertias.append(kmeanModel.inertia_) 

plt.plot(K, inertias, 'bx-')

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第25张图片

gpd.plot(figsize=(12,10), alpha=0.3)

scatter\_map = plt.scatter(data=df\_clean, x='lon', y='lat', c='label', alpha=0.3, cmap='tab10', s=2)

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第26张图片

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第27张图片 


PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第28张图片

点击文末“阅读原文”

获取全文完整代码数据资料。

本文选自《python岭回归、Lasso、随机森林、XGBoost、Keras神经网络、kmeans聚类链家租房数据地理可视化分析》。

681fa028bfa8f1dd9b97f6360e038714.jpeg

本文中分析的租房数据分享到会员群,扫描下面二维码即可加群!

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第29张图片

6337d10382745ce0a4f5680b17555a30.jpeg

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第30张图片

点击标题查阅往期内容

R语言贝叶斯广义线性混合(多层次/水平/嵌套)模型GLMM、逻辑回归分析教育留级影响因素数据

Python中的Lasso回归之最小角算法LARS

高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据

Python高维变量选择:SCAD平滑剪切绝对偏差惩罚、Lasso惩罚函数比较

R语言惩罚logistic逻辑回归(LASSO,岭回归)高维变量选择的分类模型案例

R使用LASSO回归预测股票收益

广义线性模型glm泊松回归的lasso、弹性网络分类预测学生考试成绩数据和交叉验证

贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析免疫球蛋白、前列腺癌数据

R语言RSTAN MCMC:NUTS采样算法用LASSO 构建贝叶斯线性回归模型分析职业声望数据

r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现

R语言高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据(含练习题)

Python中LARS和Lasso回归之最小角算法Lars分析波士顿住房数据实例

R语言Bootstrap的岭回归和自适应LASSO回归可视化

R语言Lasso回归模型变量选择和糖尿病发展预测模型

R语言实现贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析

基于R语言实现LASSO回归分析

R语言用LASSO,adaptive LASSO预测通货膨胀时间序列

R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析

R语言惩罚logistic逻辑回归(LASSO,岭回归)高维变量选择的分类模型案例

Python中的Lasso回归之最小角算法LARS

r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现

r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

R语言实现LASSO回归——自己编写LASSO回归算法

R使用LASSO回归预测股票收益

python使用LASSO回归预测股票收益

Python中LARS和Lasso回归之最小角算法Lars分析波士顿住房数据实例

R语言Bootstrap的岭回归和自适应LASSO回归可视化

R语言Lasso回归模型变量选择和糖尿病发展预测模型

R语言实现贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析

基于R语言实现LASSO回归分析

R语言用LASSO,adaptive LASSO预测通货膨胀时间序列

R语言自适应LASSO 多项式回归、二元逻辑回归和岭回归应用分析

R语言惩罚logistic逻辑回归(LASSO,岭回归)高维变量选择的分类模型案例

Python中的Lasso回归之最小角算法LARS

r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现

r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

R语言实现LASSO回归——自己编写LASSO回归算法

R使用LASSO回归预测股票收益

python使用LASSO回归预测股票收益

R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析

数据分享|R语言逻辑回归、线性判别分析LDA、GAM、MARS、KNN、QDA、决策树、随机森林、SVM分类葡萄酒交叉验证ROC

MATLAB随机森林优化贝叶斯预测分析汽车燃油经济性

R语言用Rcpp加速Metropolis-Hastings抽样估计贝叶斯逻辑回归模型的参数

R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

R语言中贝叶斯网络(BN)、动态贝叶斯网络、线性模型分析错颌畸形数据

R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归

Python贝叶斯回归分析住房负担能力数据集

R语言实现贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析

Python用PyMC3实现贝叶斯线性回归模型

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

R语言Gibbs抽样的贝叶斯简单线性回归仿真分析

R语言和STAN,JAGS:用RSTAN,RJAG建立贝叶斯多元线性回归预测选举数据

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言贝叶斯线性回归和多元线性回归构建工资预测模型

R语言贝叶斯推断与MCMC:实现Metropolis-Hastings 采样算法示例

R语言stan进行基于贝叶斯推断的回归模型

R语言中RStan贝叶斯层次模型分析示例

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化

R语言随机搜索变量选择SSVS估计贝叶斯向量自回归(BVAR)模型

WinBUGS对多元随机波动率模型:贝叶斯估计与模型比较

R语言实现MCMC中的Metropolis–Hastings算法与吉布斯采样

R语言贝叶斯推断与MCMC:实现Metropolis-Hastings 采样算法示例

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化

视频:R语言中的Stan概率编程MCMC采样的贝叶斯模型

R语言MCMC:Metropolis-Hastings采样用于回归的贝叶斯估计

R语言用lme4多层次(混合效应)广义线性模型(GLM),逻辑回归分析教育留级调查数据

R语言随机森林RandomForest、逻辑回归Logisitc预测心脏病数据和可视化分析

R语言基于Bagging分类的逻辑回归(Logistic Regression)、决策树、森林分析心脏病患者

R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化

b7919b4762c33e20815a38a0ff0f68e2.png

c33c9be1b009596641acb6d66f442d59.jpeg

PYTHON链家租房数据分析:岭回归、LASSO、随机森林、XGBOOST、KERAS神经网络、KMEANS聚类、地理可视化..._第31张图片

你可能感兴趣的:(python,数据分析,回归,随机森林,keras)