自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(133)
  • 收藏
  • 关注

原创 如何从 Pandas DataFrame 中选择一个 Series?

从 Pandas DataFrame 中选择 Series 的方法这段文字主要讲解了如何从 Pandas DataFrame 中选择一个 Series。首先,介绍了 DataFrame 和 Series 两种基本的数据结构,并说明 DataFrame 是一个表格,而 Series 是表格中的列。接着,展示了如何使用 read_csv 方法读取 UFO 观测数据,并通过 type 和 head...

2024-08-20 15:22:36 346

原创 如何对 Pandas DataFrame 或 Series 进行排序?

Pandas 数据框和序列排序方法详解这段文字主要介绍了在 Pandas 库中如何对数据框 (DataFrame) 和序列 (Series) 进行排序。1. 数据结构介绍:数据框 (DataFrame): 类似于表格,拥有行和列。序列 (Series): 数据框中的一列,也可以独立存在。2. 排序方法:新方法 (版本 0.17 及以后):排序序列: 使用 Series.so...

2024-08-20 15:19:22 216

原创 Python 网络爬虫(第二部分):使用 Beautiful Soup 解析 HTML

本教程是四部分系列的第二部分,教你如何利用网页抓取技术从纽约时报一篇关于特朗普总统的文章中构建数据集。本部分将利用之前观察到的文章格式模式,开始构建数据集。首先,使用 requests 库将文章的 HTML 代码读取到 Python 中。如果没有安装 requests 库,可以使用命令行 pip install requests 安装。代码将从 URL 获取网页并将其存储在名为 R 的响应对象中...

2024-08-20 15:18:51 292

原创 什么是 Pandas? (问答系列介绍)

数据学院 Pandas 视频系列介绍:本视频系列由数据学院创始人 Kevin Markham 主讲,主要针对希望使用 Python 处理数据的用户,帮助他们学习和使用 Pandas 这个强大的数据处理工具。视频内容概览:目标用户: 本系列适合有一定 Python 基础,想要学习数据处理的使用者,无论你是 Pandas 新手,还是想要提升技能的使用者,都适合观看。什么是 Pandas: ...

2024-08-20 15:14:00 186

原创 使用 scikit-learn(而不是 pandas)进行 ML 预处理的四个理由

本文主要论述了在机器学习数据预处理中使用 scikit-learn 的优势,并通过四个关键点进行阐述:1. 跨验证整个工作流程: 使用 scikit-learn 的 pipeline 可以将预处理和模型构建步骤整合在一起,并在跨验证中对整个流程进行评估。这种方式能够在每个折叠中进行预处理,避免数据泄露,从而更准确地估计模型的未来性能。2. 网格搜索模型和预处理超参数: scikit-learn...

2024-08-20 15:13:24 320

原创 我如何使用 pandas 和 scikit-learn 创建 Kaggle 提交?

视频摘要:使用 Pandas 和 Scikit-learn 进行机器学习该视频主要讲解如何使用 Pandas 和 Scikit-learn 进行机器学习,并以 Kaggle 上的泰坦尼克号生存预测比赛为例进行演示。内容概述:介绍 Kaggle 和机器学习:Kaggle 是一个流行的机器学习竞赛平台。机器学习可以被简单定义为从数据中半自动提取知识的过程。使用 Pandas 处理泰坦尼克...

2024-08-20 15:12:19 261

原创 如何在 pandas 中更改显示选项?

这段文字主要介绍了如何在Pandas库中更改数据显示选项,以实现对大型数据集的完整浏览。首先,作者解释了Pandas默认情况下会截断显示过长数据,只展示开头和结尾的部分。为了查看所有数据,作者介绍了如何使用pd.getoption和pd.setoption函数来修改display.max_rows选项。作者演示了如何使用pd.getoption('display.max_rows')查看当前选...

2024-08-20 15:11:47 198

原创 如何在 pandas 中处理日期和时间?

这段文字主要介绍了在 Pandas 库中如何处理日期和时间数据。首先,作者使用 UFO 报告数据作为示例,展示了如何将字符串类型的日期时间数据转换为 Pandas 的日期时间格式。作者强调了这种转换的重要性,因为它可以方便地使用 Pandas 提供的日期时间属性和方法进行分析。作者还介绍了 pd.to_datetime 函数的用法,以及如何利用该函数将字符串类型的日期时间数据自动转换为 Pan...

2024-08-20 15:09:35 152

原创 如何从 Pandas DataFrame 中选择多行和多列?

Pandas 数据框选择方法:Locke、iLocke 和 iX 的区别这段文字介绍了 Pandas 库中三种用于选择数据框行和列的方法:Locke、iLocke 和 iX。Locke 是一种基于标签进行筛选的方法,通过方括号 [] 来指定想要选择的行和列。行标签指的是数据框的索引,列标签指的是列名。Locke 的格式为 ufo.loc[要选择的行, 要选择的列]。使用 : 代表选择所...

2024-08-20 15:07:58 416

原创 Git 和 GitHub 有什么区别?

本视频主要讲解了 Git 和 GitHub 的区别。Git 是一种版本控制系统,主要用于程序员和其他代码编写者。它在本地机器上的命令行中运行,可以跟踪文件及其修改,并将其存储在一个称为仓库(Repository)或简称 Repo 中。视频中展示了本地机器上的一个仓库,包括被跟踪的文件和文件夹以及最近五次修改记录。Git 可以单独使用,也可以与团队合作使用,方便团队成员独立工作、合并修改,并记录每...

2024-08-20 15:05:46 211

原创 如何让我的 Pandas DataFrame 更小更快?

Pandas 数据框的类型类别和内存使用详解这段文字主要介绍了 Pandas 数据框中的类型类别(type category)和内存使用情况。1. 类型类别:类型类别主要用于描述数据框中每一列数据的类型,例如 int、float 和 object。object 类型通常表示字符串,但也可能包含 Python 列表或字典等其他对象。Pandas 数据框存储 object 类型数据时,实际...

2024-08-20 15:02:31 296

原创 在列转换器中传递一些列并删除其他列

使用 ColumnTransformer 处理特征矩阵这段文字介绍了如何使用 ColumnTransformer 对特征矩阵进行预处理,特别是如何对不同列应用不同的处理方法,例如对某些列进行填充,对另一些列直接保留,以及对某些列进行删除。主要内容:ColumnTransformer 的作用: 用于对特征矩阵的不同列应用不同的预处理方法。示例: 对一个包含五列的特征矩阵进行预处理,其中...

2024-08-20 14:53:55 303

原创 Python 网络爬虫 (第三部分): 构建数据集

纽约时报文章爬取教程:提取日期和谎言本教程是四部分系列教程的一部分,旨在通过网页抓取从纽约时报关于特朗普总统的文章中构建数据集。在本节中,我们将从已解析的HTML数据中提取日期和谎言信息。提取日期我们使用find方法在第一个记录中查找<strong>标签,并提取其text属性来获取日期。由于日期包含一个特殊字符\xA0,我们使用切片将其移除。最后,我们添加年份信息以确保日期...

2024-08-20 14:52:47 276

原创 使用 GridSearchCV 同时调整多个模型参数。

使用网格搜索同时调优多个模型本文介绍了一种在同一网格搜索中调优多个模型的方法,无需创建多个管道。传统上,网格搜索用于调优模型的超参数,通过定义每个参数的尝试值并交叉验证所有可能的组合来找到最佳参数组合。可以通过将模型或管道传递给网格搜索来实现。本文在原有方法基础上,通过以下三个步骤实现了在同一网格搜索中调优多个模型:1. 创建多个参数字典: 每个字典对应一个模型,包含该模型的超参数和预处理步骤...

2024-08-20 14:52:16 324

原创 使用多项式特征创建特征交互项

特征交互:提升模型表现力的利器本文主要介绍了在机器学习中创建特征交互(Feature Interaction)的原理、方法和应用场景。为什么要创建特征交互?特征交互是指通过组合多个特征,创造新的特征来反映特征之间的相互影响。例如,特征 A 和 B 单独对目标变量的影响很小,但当它们组合在一起时,对目标变量的影响会显著增强。这种情况下,创建 A * B 的交互项可以帮助模型学习到这种组合效应。...

2024-08-20 14:49:36 206

原创 Pandas 中你需要了解的 5 个新变化

这段文字介绍了 Pandas 版本 0.22 中的五个新变化,其中第一个变化是 ix 属性被弃用。视频内容主要介绍了 ix 属性的弃用,以及替代方案 loc 和 iloc 的使用方法。具体内容如下:ix 属性被弃用: Pandas 版本 0.20 开始,ix 属性被弃用,意味着开发者应该停止使用它,未来版本可能会完全移除该属性。loc 和 iloc 属性: 作为 ix 的替代方案,lo...

2024-08-20 14:43:01 274

原创 如何在 pandas 中使用 MultiIndex?

这段文字是来自一个关于 Pandas 多级索引的网络直播问答环节。主播针对观众 Manny 关于 Pandas 多级索引的疑问,进行了详细的讲解和代码演示。首先,主播解释了多级索引的概念,并以一个名为 stocks 的股票数据集为例,展示了如何使用 groupby 函数对股票数据进行分组,并计算每种股票的平均收盘价。接着,主播介绍了如何创建多级索引。他使用 set_index 函数将 symb...

2024-08-20 14:42:29 309

原创 21 个更多 Pandas 技巧

Pandas技巧:25个实用技巧(摘要)这篇文章介绍了25个实用的Pandas技巧,旨在帮助用户更高效地使用Pandas进行数据处理。以下是对文章内容的详细摘要:1. 检查数据帧是否相等:使用equals方法检查两个数据帧是否完全相同,但该方法对数据类型敏感,遇到缺失值会返回False。使用assert_series_equal函数进行更加灵活的比较,可以忽略数据类型。使用assert...

2024-08-20 14:41:56 234

原创 使用切片访问管道的一部分

使用 Python 切片操作管道:灵活操控机器学习流程本文介绍了一种高级技巧,利用 Python 的切片操作来灵活操控机器学习管道中的部分步骤。具体而言,本文以一个包含三个步骤的机器学习管道为例进行说明:预处理步骤: 使用 ColumnTransformer 对数据进行预处理。特征选择步骤: 使用特征选择器对预处理后的数据进行特征选择。分类步骤: 使用分类器对选定特征进行分类。本文...

2024-08-20 14:34:12 277

原创 使用 ColumnTransformer 选择列的七种方法

这段文字主要介绍了使用 make_column_transformer 来选择数据框中的特定列进行处理的七种方法。七种方法分别是:按列名选择: 直接指定需要选择的列名,例如 embarked 和 sex。按列位置选择: 使用整数表示列的位置,从 0 开始计数,例如 1 和 2 表示第二列和第三列。使用切片选择: 通过切片的方式选择一组连续的列,例如 1:3 表示选择第二列和第三列。...

2024-08-20 14:31:28 197

原创 使用 FunctionTransformer 将函数转换为转换器

本文介绍了如何将自定义函数转化为scikit-learn中的transformer,从而在机器学习中进行数据预处理。核心内容:在机器学习中,使用scikit-learn进行数据预处理可以防止数据泄露,方便对新数据进行预测,并支持使用网格搜索进行预处理参数调优。当需要使用自定义函数进行数据预处理时,可以使用FunctionTransformer将函数转化为transformer。Funct...

2024-08-20 14:29:20 317

原创 在 Git 中提交更改并推送到 GitHub 仓库

将修改和新文件推送到 GitHub 的详细步骤本摘要将详细讲解如何将修改后的文件和新文件推送到 GitHub 仓库。步骤一:修改现有文件和创建新文件打开 Git Bash 并切换到 TestRepo 目录。打开 readme.md 文件(使用任何文本编辑器)进行修改,并保存。使用 touch new.md 命令创建一个名为 new.md 的新文件。打开 new.md 文件,并使用 M...

2024-08-20 14:28:15 648

原创 Python 网络爬虫(第一部分):入门

本教程是关于使用网页抓取从纽约时报关于特朗普总统的文章中构建数据集的四部分入门教程。如果你想在家跟着做,可以从GitHub下载这个Jupyter笔记本,在下面的描述中有一个链接。在本视频中,你将学习什么是网页抓取以及它为什么有用。此外,我将解释你需要知道的关于HTML的三个基本知识,以便开始网页抓取。首先,让我们从什么是网页抓取开始。2017年7月21日,纽约时报更新了一篇名为“特朗普的谎言”的...

2024-08-20 14:26:06 121

原创 我应该什么时候在 pandas 中使用 “groupby”?

Pandas 中 Groupby 的使用场景详解这段文字主要讲解了在 Pandas 中如何使用 groupby 函数,并详细阐述了其适用场景。核心内容:groupby 函数的作用: 它允许你根据数据框中的某一列(例如 continent)对数据进行分组,并对每组数据进行分析。使用场景: 当你想根据某个分类变量对数据进行分析时,例如:计算每个洲的啤酒平均消费量: drinks.grou...

2024-08-20 14:21:43 173

原创 大多数参数应该作为关键字参数传递。

这段文字主要介绍了Scikit-learn库中关于参数传递方式的改变。核心内容:从版本0.23开始,Scikit-learn强制要求将某些参数以关键字参数的形式传递,不再支持位置参数。这样做是为了提高代码的可读性和清晰度,避免混淆参数的对应关系。并非所有参数都需要以关键字参数传递,可以通过查看类或函数定义来识别哪些参数需要以关键字参数传递。关键字参数也称为命名参数,它们在函数定义中用星...

2024-08-20 14:06:25 204

原创 更多关于 Pandas 的问题解答!

如何阅读 Pandas 文档:详细摘要这段文字讲解了如何有效地阅读 Pandas 文档,主要内容包括:1. 找到目标页面:最便捷的方法是直接在 Google 搜索 “Pandas + 函数名”。注意选择最新版本的文档,Google 索引可能包含旧版本。2. 页面解读:函数名称格式:Pandas.函数名 表示该函数是顶层函数,需要使用 pd.函数名 调用。函数定义:包含参数列表,...

2024-08-20 14:05:54 130

原创 Pandas 最佳实践 (4/10):检验关系

这段文字主要讲解了如何使用 Pandas 库分析交通拦截数据,并重点关注性别是否影响车辆搜查的概率。首先,介绍了数据集中有两个关键列:驾驶员性别和是否搜查车辆。然后,以“搜索率”为基础,通过 value_counts 和 normalize 方法计算出所有拦截事件中车辆被搜查的比例,大约为 3.5%。接着,介绍了一种更简洁的方法:直接使用 mean() 方法计算布尔值列的平均值,从而获得该列...

2024-08-20 14:03:43 202

原创 使用序数编码器代替独热编码器与树模型

数据预处理:名义特征与有序特征的编码方法这篇文字主要介绍了在机器学习中处理名义特征(无序特征)和有序特征的两种常用编码方法:One-Hot 编码和Ordinal 编码,并说明了它们在使用上的区别和优劣。**名义特征(Nominal Feature)**是指没有自然顺序的分类特征,例如颜色。对于名义特征,通常使用 One-Hot 编码,它为每个类别创建一个新的特征列。例如,如果一个特征有 10 ...

2024-08-20 13:56:39 317

原创 Scikit-learn 中的成本敏感学习

成本敏感学习:处理类别不平衡问题的利器本文介绍了一种名为“成本敏感学习”的技术,它在处理类别不平衡问题时尤为有效,并且可以显著提升模型的AUC值。核心思想: 成本敏感学习认识到,不同的预测错误带来的成本并不相同。在类别不平衡的情况下,将正样本误判为负样本(假阴性)的成本通常高于将负样本误判为正样本(假阳性)。这是因为正样本通常比较稀少,因此我们更关注找到正样本,而不是负样本。实现方式: ...

2024-08-16 21:58:42 321

原创 使用 KNNImputer 或 IterativeImputer 填补缺失值。

缺失值填补:超越简单填补本文探讨了两种超越简单填补的缺失值填补方法:迭代填补器(Iterative Imputer)和 KNN 填补器(KNN Imputer)。简单填补的局限性:简单填补器只考虑单个特征,例如用平均值、中位数或众数填补年龄缺失值。这种方法忽略了特征之间的关联性。例如,如果年龄与票价存在关联,则应根据票价的高低来填补年龄。多元方法的优势:迭代填补器和 KNN 填补...

2024-08-16 21:57:06 362

原创 Pipeline 和 make_pipeline 之间的区别是什么?

Make vs. Non-Make 版本的机器学习管道构建方法本文比较了 scikit-learn 库中两种构建机器学习管道的不同方法:使用 make 函数和不使用 make 函数。1. 比较 make_pipeline 和 Pipeline:make_pipeline:更简洁,直接传入模型和转换器对象即可。Pipeline:需要将模型和转换器对象封装在元组中,并指定步骤名称。2. ...

2024-08-16 21:54:24 147

原创 处理分类特征缺失值的两种方法

这段文字主要介绍了处理缺失值的两种方法:**1. 使用最频繁值填充缺失值:**这种方法会将数据集中出现频率最高的类别用于填充缺失值。例如,在文中给出的例子中,square是出现频率最高的类别,因此缺失值会被填充为square。**2. 使用missing字符串填充缺失值:**这种方法将缺失值视为一个独立的类别,并用missing字符串进行填充。作者认为第二种方法更可取,因为它将缺失值视为一个...

2024-08-16 21:41:44 310

原创 HistGradientBoostingClassifier 原生支持缺失值。

本文以一个示例展示了如何使用HIST Gradient Boosting Classifier 处理缺失值。 该模型是Scikit-learn 中唯一一个原生支持缺失值的分类模型,它可以处理缺失值,而无需进行任何填充操作。示例步骤:使用Pandas 统计训练数据和测试数据中每个特征的NaN数量。将训练数据中的目标变量(Survived)分离出来,并将训练数据缩减为三个特征。使用HIST ...

2024-08-16 21:39:32 404

原创 R语言中dplyr实战教程,快速数据操作

Dplyr 数据操作利器:简洁高效的数据探索这段文字介绍了 Hadley Wickham 开发的 R 语言数据操作包 Dplyr。Dplyr 是 Plyr 的升级版,专门针对数据框进行操作,以简洁高效著称。Dplyr 的优势:节省时间: Dplyr 的语法简洁易懂,可以大幅减少代码编写和阅读时间。性能出色: Dplyr 拥有良好的性能,能够高效处理数据。支持多种数据源: Dplyr 可...

2024-08-16 21:38:59 315

原创 pandas 最佳实践 (8/10): 绘制时间序列

这段文字主要探讨了如何分析交通数据中与毒品相关的活动时间变化。作者首先指出数据集中包含“Drugs Related Stops”这一布尔型列,代表了交通拦截中是否与毒品相关。通过计算该列的平均值,可以得出与毒品相关的拦截比例,在本例中不到1%。作者进一步解释了如何利用“Stop Date Time”列中的时间信息来分析毒品活动的时间变化趋势。他认为,可以通过将“Stop Date Time”列中...

2024-08-16 21:38:28 177

原创 如何使用 scikit-learn 对分类特征进行编码?

机器学习中的管道:有效地构建和评估模型本文介绍了机器学习中管道(Pipeline)的概念及其重要性。管道是将数据预处理步骤和模型构建步骤串联在一起的工具,它可以有效地提高模型构建和评估的效率。使用管道的两个主要原因:正确地进行交叉验证: 管道允许对整个数据处理流程进行交叉验证,而不仅仅是模型本身。这在数据预处理步骤对模型结果有重要影响的情况下尤为重要。网格搜索和随机搜索: 管道允许对...

2024-08-16 21:35:47 366

原创 修剪决策树以避免过拟合

这段文字主要介绍了决策树模型中的一种名为“代价复杂度剪枝”的技术。这种技术可以用来控制模型的过拟合。核心内容:过拟合问题: 决策树模型容易过拟合训练数据,导致在测试集上表现不佳。剪枝技术: 代价复杂度剪枝是一种优雅的控制过拟合的方法,它可以通过调整参数来控制树的复杂度。参数解释: 剪枝参数类似于正则化参数,默认值为0,表示不剪枝。可以通过增加参数值来剪枝,从而减少树的节点数量。交叉验证...

2024-08-16 21:35:14 123

原创 如何在 pandas 中合并 DataFrames?

这段文字是关于 Pandas 数据处理中合并和连接操作的教程。教程作者 Kevin 首先介绍了 Pandas 中与合并相关的四个函数:append、concat、join 和 merge,并推荐使用 concat 和 merge,因为它们更灵活。教程重点讲解了 merge 函数,并用示例数据演示了如何使用 merge 函数进行合并操作。教程还简要介绍了四种连接类型,并说明了在不同场景下使用哪种连...

2024-08-16 21:34:10 166

原创 如何在 pandas 中查找并删除重复行?

这段文字来自一个 YouTube 评论者的提问,询问如何统计数据框中特定列的重复值数量。视频讲解者首先导入 pandas 库,并使用之前视频中的代码示例,这是一个电影评论者数据集。为了统计重复的邮政编码,视频讲解者使用了 users.zip_code.duplicated() 方法,该方法返回一个布尔值序列,其中 True 表示该行对应的邮政编码在之前出现过,False 表示该行对应的邮政编码是...

2024-08-16 21:30:29 106

原创 Pandas最佳实践(1/10):介绍数据集

这段文字是Kevin Markham在2018年的一次Python会议上关于Pandas的教程的介绍。教程分为十部分,旨在帮助学习者更熟练地使用Pandas来解决数据科学问题。教程内容概述:第一部分视频介绍教程和数据集。剩余九个视频包含练习,并提供详细讲解。观众可以从GitHub获取数据集,链接在视频描述中。这是一个中级教程,建议Pandas新手先观看Markham的另一个视频系列“D...

2024-08-16 21:29:55 279

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除