- 博客(12)
- 收藏
- 关注
原创 用Python遍历文件夹下的所有文件并进行数据处理(Pathlib简介)
在数据分析的日常工作中,我们可能会经常需要处理这样的问题:将一个或多个文件夹下的文件中的数据进行分析、处理、整合。这些文件通常是相似的或是同类别的,比如我们有多个月份的销售信息,每个月份的数据分别存在一个excel文档中;多个类别的销售信息,每个类的数据分别存在一个excel文档中等等。像是如图中所示:在当前文件夹中存在“files”文件夹,里面是我们将要分析的数据,在该文件夹目录下又有如下四个文件夹,我们可以看作是四个大类的数据:这四个文件夹当中就分别存放着所对应的数据,随便打开其中一..
2020-10-14 16:10:54
32565
7
原创 天池数据竞赛 “二手车交易价格预测”TOP 2%开源特征工程与模型调参代码
本文是天池的零基础入门数据挖掘之“二手车交易价格预测大赛”的相关baseline与后续提分的完整代码思路分享。目前score在446,名次在200名以内,使用的模型为LightGBM,个人电脑对面15w+的数据量太慢了,贝叶斯调参一边半天时间过去了= =。现在把特征工程思路分享给大家,希望对大家提分有帮助。关注公众号“数据科学与人工智能技术”并发送文字“二手车”即可得到本代码。...
2020-10-09 16:22:44
1008
1
原创 天池数据竞赛“快来一起挖掘幸福感!”TOP 5%开源特征工程与模型调参代码
目前MSE在0.471左右,成绩稳定在300名以内,争取再做做特征冲进200名,把目前的代码开源出来分享给大家,若有错误或建议请直接提出,这也是对我的帮助,谢谢啦。关注公众号“数据科学与人工智能技术”并发送文字“幸福感”即可得到本代码。...
2020-09-22 17:48:14
1308
原创 一些在kaggle中对于特征工程很好用的的函数
在kaggle等数据竞赛中,特征工程是至关重要的一步。优秀的特征工程可以提高我们结果的上限,是对于提分来说需要下狠功夫的方向。本文就特征工程中会用到的方法来为大家推荐一些比较实用的函数。1.用百分位数解决数据中的异常值def base_process(df, trans_features:list, log_features: list): for col in trans_features: ulimit = np.percentile(df[col].value..
2020-09-18 16:12:31
451
1
原创 珍爱生命,远离正则表达式(parse库简介)
正则表达式(Regular Expression)描述了一种字符串匹配的模式(Pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。对于初级简单的正则匹配还算比较容易掌握,但是稍微复杂一点的正则就会经常使人头晕。因为正则表达式不够直观,可读性较差,可能你写的正则别人看不懂,而别人写的正则你看不懂。每次遇到需要字符串匹配的问题笔者都会感慨:太难了,我太难了!不过笔者在前几天新认识了一个库:parse,感觉与它真是相见恨晚!简单来说,pa...
2020-09-14 17:09:32
1840
原创 如何利用数据分析提高英雄联盟的胜率
本文将利用外服的18w场英雄联盟(LOL)比赛的数据来进行数据分析,看看如何能帮助我们提升胜率。import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')%matplotlib inlineplt.style.use('ggplot')首先读入我们的数据:ch..
2020-09-10 11:48:28
1660
原创 用pandas轻松搞定数据探索性分析(pandas参数、pandas风格、pandas-profiling)
对于每个从事和数据科学有关的人来说,大部分的时间都花在了前期的数据工作中,包括清洗、处理、探索性数据分析等。前期的工作不仅关乎数据的质量,也关乎最终模型预测效果的好坏。本文介绍一些比较冷门但效果不错的pandas方法来对数据进行初步探索,已经最后介绍一个非常方便实用的库pandas-profiling。import pandas as pdimport numpy as np展示全部特征列data = pd.read_csv('loans_2020.csv')data.head()...
2020-09-07 16:54:21
1587
原创 特征工程中对高基数类别特征的一种处理方法:特征哈希(FeatureHasher)
在数据挖掘的项目中经常会遇到一类尴尬的特征:高基数类别特征。那么什么是高基数类别特征呢?举个例子,比如像邮编、街道、产品货号等表示类别的特征,它们的基数很大,可能会有数十甚至数百个属性值。对于这种高基数类别特征确实有种“弃之可惜,食之无味”的尴尬。如果用独热编码的话,对于这种高基数类别特征会产生出数十甚至数百个新特征,造成一个新的问题:特征冗余或维度爆炸。当然根据具体的业务场景可能会存在比较好的方法从这类特征中提取有效的新特征,比如取字段有类别规律的前几位或者后几位。而本文介绍的是一种面对高基数类别..
2020-09-04 18:42:11
2617
4
原创 运用BFS算法实现北京地铁路线换乘系统
本文通过我做过的一个小项目来分享一下如何通过BFS搜索算法实现北京地铁换乘路线。搜索的规则分别为最短距离与最少换乘线路。BFS算法的原理这里就不讲了,推荐一个B站的视频,对搜索算法讲解的很清晰:BFS与DFS:https://www.bilibili.com/video/BV1Ks411575UDijkstra:https://www.bilibili.com/video/BV1ts41157Sy首先是导入长长的各站地铁的地理位置(怪我不熟悉爬虫_(:з」∠)_):station_so..
2020-09-01 16:46:42
1568
6
原创 scikit-learn中一种便捷可靠的缺失值填充方法:KNNImputer
在数据挖掘工作中,处理样本中的缺失值是必不可少的一步。其中对于缺失值插补方法的选择至关重要,因为它会对最后模型拟合的效果产生重要影响。在2019年底,scikit-learn发布了0.22版本,此次版本除了修复之前的一些bug外,还更新了很多新功能,对于数据挖掘人员来说更加好用了。其中我发现了一个新增的非常好用的缺失值插补方法:KNNImputer。这个基于KNN算法的新方法使得我们现在可以更便捷地处理缺失值,并且与直接用均值、中位数相比更为可靠。利用“近朱者赤”的KNN算法原理,这种插补方法借助...
2020-09-01 14:48:20
11581
9
原创 Pandas如虎添翼!数据清洗新神器Pyjanitor
Pandas在数据分析领域已经是家喻户晓,成为了数据分析师最常使用的Python库之一。本文重点介绍与Pandas库相辅相成的另一个数据分析专用的Python库:Pyjanitor。Pyjanitor可以在Pandas的基础上进一步简化数据预处理工作。数据预处理通常由一系列步骤组成,通过这些步骤,数据从原始杂乱的格式转化为我们业务所需的格式。在传统Pandas预处理步骤中,我们通过删除空数据行、添加新的列/重命名列/合并列、过滤行等一步步操作来完成。这些步骤是有依赖性的,我们通常称为有向无环图。受到
2020-08-25 10:29:14
977
原创 随机森林算法(RandomForest)——运营商流失用户预测
如何最大程度地挽留在网用户、吸取新客户,是电信企业最关注的问题之一。竞争对手的促销、公司资费软着陆措施的出台和政策法规的不断变化,影响了客户消费心理和消费行为,导致客户的流失特征不断变化。对于电信运营商而言,流失会给电信企业带来市场占有率下降、营销成本增加、利润下降等一系列问题。在发展用户每月增加的同时,如何挽留和争取更多的用户,是一项非常重要的工作。本次比赛就是关于运营商流失用户预测的二分类问题。话不多说,直接上代码(•̀ω•́)✧import pandas as pdpd.set_opt..
2020-08-21 11:34:37
2458
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人