阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Python中非常有用的三个数据科学库

330次阅读
没有评论

共计 2199 个字符,预计需要花费 6 分钟才能阅读完成。

导读 如果你从事数据科学研究有一段时间了,那么 pandas, scikit-learn seaborn 和 matplotlib 这些库你都应该非常的熟悉。

Python 中非常有用的三个数据科学库

如果您想要扩展您的视野,学习一些更少见但同样有用的库。在本文中,我将向您展示一些不太为人所知的但是却非常好用的 python 库。

imbalanced-learn

如果你过去一直在构建一些有监督的机器学习模型,你就会知道目标变量中的类别不平衡可能是一个大问题。这是因为在少数类中没有足够的例子来让算法学习模式。

一个解决方案是创建一些合成样本,通过使用例如 SMOTE(合成少数群体过采样技术) 来增加少数群体类的学习。

幸运的是,imbalance-learn 库将帮助您在任何不平衡数据集上实现这一技术。

您可以通过在终端上执行以下命令来安装 imbalance-learn 库。

pip install imbalanced-learn

为了演示如何平衡数据集,我们将使用 sklearn 下载乳腺癌数据集。

from sklearn.datasets import load_breast_cancer 
import pandas as pddata = load_breast_cancer() 
df = pd.DataFrame(data.data, columns=[data.feature_names]) 
df[‘target’] = data[‘target’] 
df.head()

Python 中非常有用的三个数据科学库

下面看目标变量的分布。

df.target.value_counts()

Python 中非常有用的三个数据科学库

数据集确实是均匀分布的,尽管它不是非常不平衡: 我们有 357 名乳腺癌患者和 212 名健康患者。

我们看看能不能让它更平衡一点。我们将使用 SMOTE 对 0 类进行过采样。

from imblearn.over_sampling import SMOTE 
oversample = SMOTE() 
X_oversample, y_oversample = oversample.fit_resample(data.data, data.target) 
pd.Series(y_oversample).value_counts()

如你所见,数据集现在已经完全平衡了。每个类有 357 个实例。作为我们操作的结果,创建了 145 个人工实例。

statsmodels

这是另一个很棒的库,专门用来建立统计模型。我通常用它来拟合线性回归

它真的很容易使用,你可以马上得到很多关于模型的信息,比如 R2 BIC、AIC、置信度和它们相应的 p 值。当使用 scikit-learn 的线性回归时,这些信息更难以获取。

让我们看看如何使用这个库来适应线性回归模型。让我们先下载一个波士顿房价数据集。

from sklearn.datasets import load_boston 
import pandas as pd 
data = load_boston() 
df = pd.DataFrame(data.data, columns=[data.feature_names]) 
df[‘target’] = data[‘target’] 
df.head()

Python 中非常有用的三个数据科学库

上面是我们的数据集的前五行。有 13 个特征,我们可以看到一个目标变量是一个连续的数字。这是一个完美的回归数据集。

现在让我们使用 pip 安装统计模型库

pip install statsmodels

现在,我们可以使用以下代码尝试将线性回归模型与我们的数据相匹配。

import statsmodels.api as sm 
X = sm.add_constant(df.drop(columns=[‘target’])) # adding a constant 
model = sm.OLS(df.target, X).fit() 
predictions = model.predict(X) 
print_model = model.summary() 
print(print_model)

Python 中非常有用的三个数据科学库

我们刚刚将一个线性回归模型拟合到这个数据集上,并打印出了该模型的详细摘要。您可以很容易地阅读所有重要信息,在必要时重新调整功能,并重新运行模型。

我发现与 scikit-learn 版本相比,使用 statsmodels 进行回归更容易,因为我需要的所有信息都在这个简短的报告中。

missingno

missingno 是另一个有用的库。它可以帮助您可视化缺失值的分布。

您可能已经习惯使用 isnull() 函数检查 pandas 中的缺失值。这可以帮助您获取每列缺失值的数量,但不能帮助您确定它们的位置。这正是 missingo 变得有用的时候。

你可以使用下面的命令安装库:

pip install missingno

现在,让我们演示如何使用 missingo 来可视化缺失的数据。为了做到这一点,我们将从 Kaggle 下载预期寿命数据集。

然后可以使用 read_csv() 函数加载数据集,然后从 missingno 库调用 matrix() 函数。

import pandas as pd 
import missingno as msno 
df = pd.read_csv(‘Life Expectancy Data.csv’) 
msno.matrix(df)

Python 中非常有用的三个数据科学库

可以看到缺失值的位置。如果怀疑丢失的值位于某个特定位置或遵循某个特定模式,那么它将非常有用。

总结

以上三个库非常的有用,通过使用它们可以简化我们的操作,提高我们的工作效率。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计2199字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7802401
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新 SSL 证书系统、申请 godaddy 的 APIKEY 公司之前花钱购买的 ssl 证书快...
星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛NAS-1:安装飞牛NAS

星哥带你玩飞牛 NAS-1:安装飞牛 NAS 前言 在家庭和小型工作室场景中,NAS(Network Atta...
【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件 大家好,我是星哥,很多人都希望能高效地保存微信公众号的文章,用于...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你 为什么要用宝塔跑分? 宝塔跑分其实就是对 CPU、内存、磁盘、IO 做...
Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集

Prometheus:监控系统的部署与指标收集 在云原生体系中,Prometheus 已成为最主流的监控与报警...
如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的 Nano Banana Pro?附赠邪修的用法 前言 大家好,我是星哥,今天来介绍谷歌的 ...
星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的 NAS 中! 大家对「数据安全感」的需求越来越高 ...
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...