Pandas的安装

MAC

pip3 install pandas

若遇到管理员权限问题,加上sudo

接下来我们开始使用pandas

我们先构建一个一维序列:

s = pd.Series( [3, -5, 7, 4], index=['a', 'b', 'c', 'd'] )

接下来,我们打印pandas的另外一种数据形式, DataFrame

A two-dimensional labelled data structure with columns of potentially different types

使用代码构建如上所示的数据形式

  data = {

  'Country'     :  ['Belgium','India','Brazil'],
  'Capital'      :  ['Brussels','New Delhi','Brasilia'],
  'Population' :   [11190846,1303171035,207847528]

  }

  df = pd.DataFrame(data, columns=['Country','Capital','Population'])

打印结果如下:

一些简单的数据操作:

df.index     行索引

df.columns 列索引

df.values    显示数值

df.describe()

行列互换                              df.T

列名排序(columns)              df.sort_index(axis=1, ascending = False )

行名排序(rows)                     df.sort_index(axis=0, ascending = False)

对指定的列名进行排序           df.sort_values(by='Population') 

drop values from rows          s.drop(['a' , 'c'])   

drop values from columns     df.drop('Country', axis=1)

二、Pandas 选择数据

#select by label

选择第0,1行

df.loc[[0,1]]

选择'Country', 'Capital'列

选择第0行,第'Country'列

#select by position

选择固定数值 df.iloc[0,0]

选择Position行,第0列

切片      df.iloc[[1:2],[2:3]]

选择某行 df.iloc[0]

mixed方式          df.ix[[1,2],'Country']]

筛选数值  选择人口大于11190846的数值

df[df.Population>100000]

修改数值

将df的第二行,第二列修改为test

使用position:

df.iloc[2,2] = 'test'

使用label:

df.loc[2,'Capital'] = 'test'

另外一种修改数值的方法是比较大小:

df.Population[df.Population>10000] = 0

将Population列中数值大于10000的修改为0

Pandas处理丢失数据

去除任意一行,有空值:

df.dropna(axis=0, how='any')

去除任意一列,有空值:

df.dropna(axis=1, how='any')

将any改为all,意味着只有当所有的都是nan的时候,才能删除

填充值, 将nan填充为0:

df.fillna(value=0)

判断是否有缺失值:

df.isnull()

np.any(df.isnull()) == True

df.isnull()

读取文件和导入文件

读取:

data = pd.read_csv('student.csv',index_col='id')

导出:

data.to_csv('output.csv')

Pandas学习的更多相关文章

  1. 用scikit-learn和pandas学习线性回归

    对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了. 1. 获取数据,定义问题 没有数据,当然没法研究机器学习 ...

  2. Pandas 学习笔记

    Pandas 学习笔记 pandas 由两部份组成,分别是 Series 和 DataFrame. Series 可以理解为"一维数组.列表.字典" DataFrame 可以理解为 ...

  3. Python pandas学习总结

    本来打算学习pandas模块,并写一个博客记录一下自己的学习,但是不知道怎么了,最近好像有点急功近利,就想把别人的东西复制过来,当心沉下来,自己自觉地将原本写满的pandas学习笔记删除了,这次打算写 ...

  4. pandas学习(数据分组与分组运算、离散化处理、数据合并)

    pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...

  5. pandas学习(创建多层索引、数据重塑与轴向旋转)

    pandas学习(创建多层索引.数据重塑与轴向旋转) 目录 创建多层索引 数据重塑与轴向旋转 创建多层索引 隐式构造 Series 最常见的方法是给DataFrame构造函数的index参数传递两个或 ...

  6. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  7. pandas学习(创建数据,基本操作)

    pandas学习(一) Pandas基本数据结构 Series类型数据 Dataframe类型 基本操作 Pandas基本数据结构 两种常用数据结构: Series 一维数组,与Numpy中的一维ar ...

  8. pandas 学习总结

    pandas  学习总结 作者:csj 更新时间:2018.04.02 shenzhen email:59888745@qq.com home: http://www.cnblogs.com/csj0 ...

  9. 用 scikit-learn 和 pandas 学习线性回归

      用 scikit-learn 和 pandas 学习线性回归¶ from https://www.cnblogs.com/pinard/p/6016029.html 就算是简单的算法,也需要跑通整 ...

  10. pandas学习系列(一):时间序列

    最近参加了天池的一个机场航空人流量预测大赛,需要用时间序列来预测,因此开始使用python的pandas库 发现pandas库功能的确很强大,因此在这记录我的pandas学习之路. # -*- cod ...

随机推荐

  1. winform子窗口调用父窗口的控件及方法-一般调用

    首先新建一个窗体应用程序,在项目属性中点击右键->添加->添加新项,选择Windows窗体->添加. 在Form1和Form2窗口中各添加一个按钮,并双击添加事件处理函数:     ...

  2. linux 如何指定nologin用户执行命令

    在linux中建立网站时,我们一般分配一个www之类的用户给网站应用程序. 如果我们使用root或者具有管理员权限的账号在网站目录下去创建文件时,会遇到各种权限问题. 这时我们可以切换到www用户,这 ...

  3. sql server 查看连接详情

    SELECT * FROM [Master].[dbo].[SYSPROCESSES] WHERE [DBID] IN ( SELECT [DBID] FROM [Master].[dbo].[SYS ...

  4. linux桌面系统的约定

    linux系统的桌面系统基本遵循同样的约定. mime类型 在linux下,关于文件类型的信息通常放在/usr/share/mime./usr/local/share/mime和用户目录下,所有应用程 ...

  5. JavaScript函数式编程究竟是什么?

    摘要: 理解函数式编程. 作者:前端小智 原文:JS中函数式编程基本原理简介 Fundebug经授权转载,版权归原作者所有. 在长时间学习和使用面向对象编程之后,咱们退一步来考虑系统复杂性. 在做了一 ...

  6. 将流数据输出到Mysql中

    outputMysqlApp.scala import java.sql.DriverManager import org.apache.spark.SparkConf import org.apac ...

  7. ezdml设计数据库

    数据结构和设计的介绍 ezdml软件:https://www.lanzous.com/i6ew2pe 1 用ezdml设计数据表然后导出到mysql数据库中 点击生成模型 2 选择库 3 点击开始生成

  8. Linux IO 概念(2)【转】

    转自:https://www.cnblogs.com/qq289736032/p/9188455.html 在上一篇IO底层的概念中杂合了很多模糊的概念,受知识水平的限制,只是从网上抄了很多过来.从l ...

  9. 3-10 Pandas 常用操作

      1.构造数据 In [1]: import pandas as pd data=pd.DataFrame({'group':['a','a','a','b','b','b','c','c','c' ...

  10. jq序 选择器

    1.库和框架 库:小而精 直接操作DOM css() jquerry封装js的那些操作: 事件,属性, ajax(交互的技术),DOM,选择器 框架:大而全  事件,DOM,属性操作,ajax,&qu ...