学习笔记
文章平均质量分 91
Marvin Ming
目前在国企研究院做软件研发项目,擅长Python,爬虫、数据分析、软件开发和后端均有涉猎。
关于博客文章有任何问题请留言,我会不定期回复,欢迎交流,但百度10分钟内能够解决的问题不会回复。
其他问题可通过邮箱联系:constmmq@163.com。
展开
-
排序算法(二)——简单选择排序详解及Python实现
一、简介选择排序算法是一种不稳定排序算法(见参考资料2中的讨论),时间复杂度为O(n^2^),但由于交换次数较少,性能略优于冒泡排序。基本思想是在第i次遍历时,在第i+1至第n个元素中,选出最小的元素作为有序序列的第i个元素。二、算法介绍以下面的数组为例,对其使用选择排序法进行升序排序:901050803070406020mi用于记录每次遍历时最小元素的位置,开始遍历时令mi=i,若li[j] < li[mi],则令mi=j。i=0时:j从1处开始遍历,得出mi=1,数组li变为:1原创 2021-08-02 15:52:31 · 419 阅读 · 0 评论 -
阅读笔记:利用Python进行数据分析第2版——第10章 数据聚合与分组运算
目录一、GroupBy机制二、数据聚合三、apply:一般性的“拆分-应用-合并”四、透视表和交叉表对数据集进行分组并对各组应用一个函数(无论是聚合还是转换),通常是数据分析工作中的重要环节。在将数据集加载、融合、准备好之后,通常就是计算分组统计或生成透视表。pandas提供了一个灵活高效的gruopby`功能,它使你能以一种自然的方式对数据集进行切片、切块、摘要等操作。在本章中,你将会学到:使用一个或多个键(形式可以是函数、数组或DataFrame列名)分割pandas对象。计算分组的概述统计,原创 2021-05-29 18:16:09 · 543 阅读 · 2 评论 -
阅读笔记:利用Python进行数据分析第2版——第9章 绘图和可视化
信息可视化(也叫绘图)是数据分析中最重要的工作之一。Python有许多库进行静态或动态的数据可视化,但我这里重要关注于matplotlib和基于它的库。matplotlib是一个用于创建出版质量图表的桌面绘图包(主要是2D方面)。该项目是由John Hunter于2002年启动的,其目的是为Python构建一个MATLAB式的绘图接口。matplotlib和IPython社区进行合作,简化了从IPython shell(包括现在的Jupyter notebook)进行交互式绘图。matplotlib支持各原创 2021-05-28 15:13:24 · 553 阅读 · 2 评论 -
阅读笔记:利用Python进行数据分析第2版——第8章 数据规整:聚合、合并和重塑
在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析。本章关注可以聚合、合并、重塑数据的方法。首先,我会介绍pandas的层次化索引,它广泛用于以上操作。然后,我深入介绍了一些特殊的数据操作。原创 2021-05-25 16:24:43 · 327 阅读 · 0 评论 -
阅读笔记:利用Python进行数据分析第2版——第7章 数据清洗和准备
本章讨论处理缺失数据、重复数据、字符串操作和其它分析数据转换的工具。处理缺失数据对于数值数据,pandas使用浮点值NaN(Not a Number)表示缺失数据。我们称其为哨兵值,可以方便的检测出来:string_data = pd.Series(['aardvark', 'artichoke', np.nan, 'avocado'])string_data.isnull()在pandas中,我们采用了R语言中的惯用法,即将缺失值表示为NA,它表示不可用not available。原创 2021-05-24 09:18:31 · 307 阅读 · 0 评论 -
阅读笔记:利用Python进行数据分析第2版——第6章 数据加载、存储与文件格式
输入输出通常可以划分为几个大类:读取文本文件和其他更高效的磁盘存储格式,加载数据库中的数据,利用Web API操作网络资源。pandas提供了一些用于将表格型数据读取为DataFrame对象的函数。read_csv和read_table是最为常用的。这些函数的选项可以划分为以下几个大类:索引:将一个或多个列当做返回的DataFrame处理,以及是否从文件、用户获取列名。类型推断和数据转换:包括用户定义值的转换、和自定义的缺失值标记列表等。日期解析:包括组合功能,比如将分散在多个列中的日期时间信原创 2021-05-22 23:41:58 · 374 阅读 · 2 评论 -
阅读笔记:利用Python进行数据分析第2版——第5章 pandas入门
pandas经常和其它工具一同使用,如数值计算工具NumPy和SciPy,分析库statsmodels和scikit-learn,和数据可视化库matplotlib。pandas是基于NumPy数组构建的,特别是基于数组的函数和不使用for循环的数据处理。SeriesSeries是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型) 以及一组与之相关的数据标签(即索引)组成。import pandas as pdfrom pandas import Series, DataFrame原创 2021-05-22 16:15:59 · 270 阅读 · 0 评论 -
阅读笔记:利用Python进行数据分析第2版——第4章 Numpy基础:数组和矢量计算
大小相等的数组之间的任何算术运算都会将运算应用到元素级。数组与标量的算术运算会将标量值传播到各个元素。大小相同的数组之间的比较会生成布尔值数组。不同大小的数组之间的运算叫做广播( broadcasting),当你将一个标量值赋值给一个切片时( 如arr[5:8]=12),该值会自动传播( 也就说后面将会讲到的“广播”)到整个选区。跟列表最重要的区别在于,数组切片是原始数组的视图。 这意味着数据不会被复制,视图上的任何修改都会直接反映到源数组上。如果你想要得到的是ndarray切片的一份副本而非视.原创 2021-05-19 15:42:22 · 1326 阅读 · 1 评论