Python众筹项目结果预测:优化后的随机森林分类器可视化|数据代码分享

简介: Python众筹项目结果预测:优化后的随机森林分类器可视化|数据代码分享


随着信息技术的飞速发展,众筹作为一个互联网金融的子领域已经成为个人和小企业主筹集资金支持梦想的创新渠道点击文末“阅读原文”获取完整代码数据

相关视频

image.png

无论对于众筹发起者还是众筹平台而言,如何利用历史数据去准确预测一个众筹项目的成功与否乃至最终筹款额度都是非常值得探讨研究的问题。

解决方案

任务/目标

根据历史数据,帮助客户分析众筹项目成功规律,预测每个项目的筹款额度。

数据源准备

从Kickstarter平台上爬取了众筹项目数据查看文末了解数据免费获取方式,其中包含了众筹项目名称、链接、描述、支持者数量和许多其他特征。随后进行了数据清洗。主要处理了各种爬虫过程中产生的缺失值。

7e10b0548698f45e10c846faf5fc9c78.png

print(df_2018.shape)
print(df_2016.shape)

e1d2089cbee6406bb03c2d119dbb7936.png

特征转换

项目名称字段二分为离散型变量(已知/未知);项目描述抽象成项目描述字数。额外加入可计算属性平均每参与者贡献额。

df.country = df.country.'N,0"', value='NO')
ummies(df.drop(labels=['name', 'launched', 'deadlin
df_encoded['avbacking'] = (df_encoded['usd_pledgal']/(df_encoded['backers']+1))

构造

划分训练集和测试集

考虑到筹款项目与时间关系不大,使用最普遍的不放回抽样方法划分训练集与测试集,比例为4:1。

数据分析

我想从了解Kickstarter项目的基础数据开始,这包括项目发起地、主要类别、持续时间、目标等内容。

percent_plot((df.countcounts()/df.s


cab170d751912916ac7370ce8ebc0c8f.png

0e8a8842d5cf5945305d9aac1f5b62a9.png

4ab26c581b65c2cf455483ed35ef48bd.png

4ab26c581b65c2cf455483ed35ef48bd.png


bf6afaa19700deff64e09d962be7f27a.png


描述性统计

从描述性统计中我们能学到什么?成功与什么有关?我们必须记住,相关性并不等于因果关系。

050331bbf21af04402d090f8ceb86472.png


机器学习分类模型

我们来看看是否能够准确地预测哪些项目会成功,哪些项目不会成功。我们将使用随机森林分类器,因为这种集成学习方法通常相当强大,并且不是基于距离的(所以我们不需要进一步标准化特征,如项目持续时间、实际筹集资金或实际目标金额)。

R_moel(42, X_train, X_test, y_train, y_test)


c4a691bad11f9dbefeab70ae9d349315.png

e080f48aabc0a63c22e4d3a2352ad565.png

print_iprtant_fe='columns'))
usd_gol_real
duration
main_category_Music

结论

根据随机森林集成学习器的特征重要性,最重要的特征包括实际目标金额(usd_goal_real)、项目持续时间(duration)、主要类别中的漫画(main_category_Comics)、时尚(main_category_Fashion)、音乐(main_category_Music)和戏剧(main_category_Theater)。这表明我们设定的货币目标以及我们允许人们为项目筹款的时间长度确实非常重要。艺术和表演类别的项目更有可能成功,这一结论得到了描述性统计分析的佐证。

许多因素都对此有贡献,而这些因素无法完全通过数据来解释。例如,商业理念、规划、激励人们进行筹款的措施或项目设计都很难量化。也许如果我们拥有每个项目评论中的情感数据,我们就可以将其整合到一个更大、更好的分类模型中,以预测我们的成功几率。

相关文章
|
2天前
|
缓存 监控 测试技术
Python中的装饰器:功能扩展与代码复用的利器###
本文深入探讨了Python中装饰器的概念、实现机制及其在实际开发中的应用价值。通过生动的实例和详尽的解释,文章展示了装饰器如何增强函数功能、提升代码可读性和维护性,并鼓励读者在项目中灵活运用这一强大的语言特性。 ###
|
1天前
|
Python
探索Python中的装饰器:简化代码,提升效率
【10月更文挑战第39天】在编程的世界中,我们总是在寻找使代码更简洁、更高效的方法。Python的装饰器提供了一种强大的工具,能够让我们做到这一点。本文将深入探讨装饰器的基本概念,展示如何通过它们来增强函数的功能,同时保持代码的整洁性。我们将从基础开始,逐步深入到装饰器的高级用法,让你了解如何利用这一特性来优化你的Python代码。准备好让你的代码变得更加优雅和强大了吗?让我们开始吧!
7 1
|
2天前
|
存储 缓存 监控
掌握Python装饰器:提升代码复用性与可读性的利器
在本文中,我们将深入探讨Python装饰器的概念、工作原理以及如何有效地应用它们来增强代码的可读性和复用性。不同于传统的函数调用,装饰器提供了一种优雅的方式来修改或扩展函数的行为,而无需直接修改原始函数代码。通过实际示例和应用场景分析,本文旨在帮助读者理解装饰器的实用性,并鼓励在日常编程实践中灵活运用这一强大特性。
|
4天前
|
机器学习/深度学习 数据采集 人工智能
探索机器学习:从理论到Python代码实践
【10月更文挑战第36天】本文将深入浅出地介绍机器学习的基本概念、主要算法及其在Python中的实现。我们将通过实际案例,展示如何使用scikit-learn库进行数据预处理、模型选择和参数调优。无论你是初学者还是有一定基础的开发者,都能从中获得启发和实践指导。
11 2
|
安全 Java Python
sonarqube扫描Python项目代码
sonarqube扫描Python项目代码
sonarqube扫描Python项目代码
|
5月前
|
算法 程序员 开发工具
GitHub上新!14个Python项目详细教程(附完整代码)
Python作为程序员的宠儿,越来越得到人们的关注,使用Python进行应用程序开发的也越来越多。 今天给小伙伴们分享的这份项目教程完整代码已上传至GitHub,你可以选择跟着这份教程一段一段的手敲出来这几个项目,也可以直接从GitHub上copy下来。
|
6月前
|
算法 程序员 开发工具
GitHub上新!14个Python项目详细教程(附完整代码)
Python作为程序员的宠儿,越来越得到人们的关注,使用Python进行应用程序开发的也越来越多。 今天给小伙伴们分享的这份项目教程完整代码已上传至GitHub,你可以选择跟着这份教程一段一段的手敲出来这几个项目,也可以直接从GitHub上copy下来。
|
存储 JSON NoSQL
Python | Python学习之常用项目代码(一)
Python | Python学习之常用项目代码(一)
|
存储 机器学习/深度学习 供应链
Python漏洞允许在35万个项目中执行代码
Python漏洞允许在35万个项目中执行代码
|
存储 Linux 开发工具
Python基础实战项目——学生信息管理系统(内涵完整项目代码)
Python基础实战项目——学生信息管理系统(内涵完整项目代码)
407 0