之前的numpy可以说是一个针对矩阵运算的库,这个Pandas可以说是一个实现数据处理的库,Pandas底层的许多函数正是基于numpy实现的

一、Pandas数据读取

1.pandas.read_csv("文件路径"):读取一个csv文件并把数据储存为一个DataFram结构。如feed_info = pandas.read_csv("food_info.csv")

2.pandas中的核心结构叫DataFram,以下简称df,见下图所示

注意在pandas中,字符型值被描述为object类型

3.df.head():打印出df的数据,如果没有参数,默认打印出前5行数据。也可以把它赋值给一个变量,如a=food_info.head(3),那么a就是一个小的df

df.tail():打印后几行

4.df.columns:获取df的列名

5.df.shape:这个就不多说了

二、Pandas索引与计算

6.df.loc[0]:取第一条数据;df.loc[3:4]取第3、4、5、6条数据;

7.df["列名"]:取对应列的数据,取多个列时df[]里接一个列表,列表元素是列名

8.df.columns.tolist():把列名制作成list。下面给出一个小例子。

9.要想对整列进行加减乘除操作,跟numpy一样直接进行,如:a = df["列名"]/1000;如果两列结构相同,可做一样的操作,对应位会实现相应的运算,如:b = df["col1"]*[df["col2"]

10.新建列的操作:df["新列名"]=new_df,相当于给每个样本添加了一个特征

11.求一列的最大值、最小值、均值:df["col_name"].max()、df["col_name"].min()、df["col_name"].mean()

三、Pandas数据预处理实例

12.df.sort_values("col_name", inplace = True):把指定列从小到大排序,inplace=True时,用排序好的列替换原来的列,否则返回一个新列,缺省默认时返回新列。

13.df.sort_values("col_name", ascending = False):从大到小排列

14.df.pivot_table(index="cn1", values="cn2", aggfunc=):pivot_tables是一个统计数据的方法,以index为基准,统计index与value之间的关系,其中values的数据由aggfunc做处理。比如说index为pclass(货舱等级),values为survived(是否获救),aggfunc为np.mean(平均处理),即统计不同货舱的平均获救率。当aggfunc缺省时默认是求平均。

15.一些其他基本函数和pandas中函数的定义见下面的小例子

三、Series结构

16.DataFrame中的一行或者一列被称为Series结构,是Pandas内部定义的结构。Series里数据的结构是ndarray

机器学习初入门02 - Pandas的基本操作的更多相关文章

  1. 机器学习初入门03 - Matplotlib

    这一部分很简单,所以以代码的形式给出,在实际学习开发中,Matplotlib最好只把它当成一个画图的工具来用,没有必要深究其实现原理是什么. 一.折线图的绘制 import pandas as pd ...

  2. 机器学习初入门04 – Seaborn(持续更新)

    Seaborn库可以说是在matplotlib库上的一个封装,它给我们提供了非常丰富的模板 一.整体布局风格设置 import seaborn as sns import numpy as np im ...

  3. 机器学习初入门01-numpy的基础用法

    一.numpy基础结构 1. numpy.genformtxt('路径名', delimiter = '分割符', dytype = 读取方式如str ):读取一个文件,返回一个numpy.ndarr ...

  4. 机器学习简易入门(四)- logistic回归

    摘要:使用logistic回归来预测某个人的入学申请是否会被接受 声明:(本文的内容非原创,但经过本人翻译和总结而来,转载请注明出处) 本文内容来源:https://www.dataquest.io/ ...

  5. 【网络爬虫入门02】HTTP客户端库Requests的基本原理与基础应用

    [网络爬虫入门02]HTTP客户端库Requests的基本原理与基础应用 广东职业技术学院  欧浩源 1.引言 实现网络爬虫的第一步就是要建立网络连接并向服务器或网页等网络资源发起请求.urllib是 ...

  6. CSS3基础入门02

    CSS3 基础入门02 边框相关属性 border-radius 通过这个属性我们可以设置边框圆角,即可以将四个角设置为统一的圆角,也可以单独的设置具体的某一个角的圆角. grammer: borde ...

  7. Python数据分析入门之pandas基础总结

    Pandas--"大熊猫"基础 Series Series: pandas的长枪(数据表中的一列或一行,观测向量,一维数组...) Series1 = pd.Series(np.r ...

  8. JavaScript基本入门02

    目录 JavaScript基础入门 02 条件语句 if 语句 if .. else 语句 switch 结构 循环语句 while 循环 continue 关键字 do...while语句 for ...

  9. SpringBoot 初入门

    SpringBoot 初入门 关于介绍什么之类的就不讲了,主要做一下学习记录. 1. 启动方式 IDEA 启动 命令行启动: mvn spring-boot:run 部署到服务器启动: 先进行打包, ...

随机推荐

  1. ConstraintLayout使用手册

    1. 解决痛点 主要用拖拽 解决嵌套过多 2. 简易使用手册 增加约束 四个角直接拖拽就好了 删除约束 match_constraint 属性 这个属性类似于match_parent,去掉margin ...

  2. 折射向量计算(Refraction Vector Calculation)

    上个月学习Peter Shirley-Ray Tracing in One Weekend的系列三本书,收获真的很多.这个系列的书真的是手把手教你如何从零开始构建一个光线跟踪渲染器,对新手(像我)非常 ...

  3. 2.Redis集群环境搭建

    转载请出自出处:http://www.cnblogs.com/hd3013779515/ 一.基本概念 1.redis集群是一个可以在多个节点之间进行数据共享的设施.redis集群提供了以下两个好处1 ...

  4. 《python源代码剖析》笔记 python环境初始化

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/zhsenl/article/details/33747209 本文为senlie原创.转载请保留此地 ...

  5. 【Java集合源代码剖析】ArrayList源代码剖析

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/mmc_maodun/article/details/35568011 转载请注明出处:http:// ...

  6. Python中让MySQL查询结果返回字典类型的方法

    import pymysql host='localhost' user='root' passwd='root' port=3306 db='test' db=pymysql.connect( ho ...

  7. 2.3.3 Button(按钮)与ImageButton(图像按钮)

    本节引言: 今天给大家介绍的Android基本控件中的两个按钮控件, Button普通按钮 ImageButton图像按钮: 其实ImageButton和Button的用法基本类似,至于与图片相关的则 ...

  8. 启动报错:Access denied for user 'root'@'localhost' (using password:YES)

    项目启动报错:Access denied for user 'root'@'localhost' (using password:YES) 原因:root帐户默认不开放远程访问权限,所以需要修改一下相 ...

  9. 使用<button></button>标签

    使用<button></button>标签一定要记住给它设置type,因为它默认的type=“submit”,会提交表单,设置如下 <button type=" ...

  10. leetcode-876 Middle of the Linked List

    Given a non-empty, singly linked list with head node head, return a middle node of linked list. If t ...