pandas作为python进行数据分析的常用第三方库,它是基于numpy创建的,使得运用numpy的程序也能更好地使用pandas. 1 pandas数据结构 1.1 Series 注:由于pandas与numpy关系密切,所以在代码中经常将二者一同导入使用. 上图中,先利用numpy创建一个一维数组,再利用pandas的内置方法将其转换为pandas的序列类型Series.可以看到,pandas会自动将原有数据转换成一列,并添加行的索引. 1.2 DataFrame pandas的第二种也是…
令笔者对pandas印象最为深刻的一件事,就是在pandas中已经内置了很多数据导入导出方法,然而本人并不了解,在一次小项目的工作中曾手写了一个从excel表格导入数据到DataFrame的python脚本.这个糗事让笔者深感代码能力急需加强! 为了让那次教训刻骨铭心,也为了避免广大读者再走类似的弯路,本文主要介绍关于pandas的数据导入导出功能,理解起来非常简单. pandas支持的导入导出数据格式多种多样,有csv,excel,sql,json,html,pickle等. 虽然支持众多数据…
作为pandas系列的最终章,本文引出一个数据"复制"问题. 示例如下: 从上图中可以看到:我们对data_pd做了删除一行的操作,但是这并没有改变变量data_pd在内存中的值,而是将删减一行后的数据放置在一块新开辟的内存区域. 可以这么理解,这种机制是在复制的一份原数据上进行操作,从而保护原数据不受改变,保证了原数据的安全性. 如果需要直接改变原数据的值,可以在上述方法上设定参数值: 上面讨论的这种现象,在python领域里广泛存在,本文作为一个引子,笔者将在另一篇博文中讨论整个p…
pandas使用小贴士 1 通过Series创建DataFrame 在pandas系列的第一篇博文中曾提到,Series可视为DataFrame的一种特例,即只有一列数据.既然如此,是否可以并列多个Series组成一个DataFrame呢?当然可以,通过这种方式创建DataFrame也称为用字典建立数据,由各列列名充当字典的键,该列数据构成的Series充当该键对应的值.示例如下: 上图中,Series类型充任df_1的第二列,因为pandas默认以"0,1,2,3"形式给行列命名,本…
python作为广受欢迎的一门编程语言,其中很重要的一个原因便是它可以使用很多第三方库. 对第三方库的理解,在笔者看来就是一些python爱好者和专门的研发机构,为满足某一特定应用领域的需要,使用python语言编写的具有特定功能的类与方法的集合. 举个例子,为了让python能够更好地进行矩阵运算,numpy库应运而生.通过调入numpy库,python对矩阵进行操作变得非常容易,这使得python能够像matlab语言一样,轻而易举地通过矩阵处理批量数据.本文要介绍的正是numpy库. 首先…
本文作为numpy系列的总结篇,继续介绍numpy中常见的使用小贴士 1 手动转换矩阵规格 转换矩阵规格,就是在保持原矩阵的元素数量和内容不变的情况下,改变原矩阵的行列数目.比如,在得到一个5x4的矩阵后,出于某种要求,需要将其转成大小为10x2的矩阵,这时就可以利用内置方法实现此功能. 上图中,使用方法reshape将一个4x3的矩阵转换为一个2x6的矩阵.需要注意的是,转换后的矩阵与原矩阵在元素顺序的排列上具有某种一致性,即将矩阵的元素逐行排列成一个列表,则两矩阵对应的列表是相同的. res…
numpy库中矩阵的常用方法 1 矩阵转置 从上图可以看出:使用方法a.T可以将矩阵a转置. 2 均值与方差 注意:方法a.mean()会对矩阵a的所有元素求均值,a.var()也是考虑矩阵a的所有元素求方差. 当然,也可以选取矩阵的某一行或某一列使用mean与var求均值与方差. 3 设置零矩阵 有时,我们需要生成一个特定大小的零矩阵(矩阵元素全为零)和全1矩阵,可以使用下图中的方法: 4 列表与矩阵的转换 4.1 列表转矩阵 4.2 矩阵转列表 5 排序 5.1 沿列方向排序 5.2 沿行方…
前一期博文中,初步探索了numpy中矩阵的几种运算操作,本文将展示numpy矩阵的元素抽取与合并操作. 1 元素抽取 在我们使用矩阵的时候,有时需要提取出矩阵的某些位置上的元素单独研究,这时就需要熟悉矩阵元素的定位操作. 1.1 提取单个元素 从上图中可以看到:矩阵的行列次序是从零开始的,即代码中矩阵的第0列(行)相当于我们通常认为的矩阵第1列(行). 1.2 提取多个元素 在抽取多个矩阵元素时,会用到形如"a:b"的表达,这是告诉python解释器我们要提取某个矩阵的第a+1行(列)…
使用pip 大多数库都可以通过pip安装,安装方法为,在命令行窗口输入 pip install libname libname为库名 某些库通过pip安装不了,可能是因为没有打包上传到pypi中,可以下载安装包之后离线安装,方法是 pip install libpath libpath为本地安装包地址,这些安装包一般以whl为后缀名.表示python扩展包的windows环境下的二进制文件. 有一个专门下载这种文件的地方http://www.lfd.uci.edu/~gohlke/pythonl…
Pandas数据加载 关注公众号"轻松学编程"了解更多. pandas提供了一些用于将表格型数据读取为DataFrame对象的函数,其中read_csv和read_table这两个使用最多. 以下命令都是在浏览器中输入. cmd命令窗口输入:jupyter notebook 后打开浏览器输入网址http://localhost:8888/ 导入包 import pandas as pd from pandas import DataFrame,Series read_xxx()参数:…