一、Pandas

  pandas的数据元素包括以下几种类型:

类型 说明
object 字符串或混合类型
int 整型
float 浮点型
datetime 时间类型
bool 布尔型

二、Series与DataFrame区别:

  1. Series是带索引的一维数组
  2. Series对象的两个重要属性是:index(索引)和value(数据值)
  3. DataFrame的任意一行或者一列就是一个Series对象

三、创建Series对象:pd.Series(data,index=index)

  其中data可以是很多类型:

    1. 一个列表---------->pd.Series([1,2,3])
    2. 一个ndarray------->pd.Series(np.random.randint(2),index=['a','b'])
    3. 一个python字典---->pd.Series({"a":2,"b":0})
    4. 一个标量值-------->pd.Series(3,index=[1,2,3])

  Series在算数运算中会自动对齐不同索引的数据:

    例如:

 >>> s=pd.Series([1,2,3],index=['a','b','c'])
>>> a=pd.Series([4,1,0],index=['b','a','c'])
>>> s+a
a 2
b 6
c 3

      unique():返回结果是一个数组,包含Series去重后的元素

      value_counts():查看每一个唯一元素的频数

四、创建DataFrame对象:pd.DataFrame(data,index,columns)

  与Series不同的是,DataFrame包括索引index和表头columns:

  其中data可以是很多类型:

    1. 包含列表、字典或者Series的字典
    2. 二维数组
    3. 一个Series对象
    4. 另一个DataFrame对象

   例如:

   1、从字典创建:

 >>> d = {'one':pd.Series([1,2,3],index=['a','b','c']), 'two':pd.Series([2,3,4],index=['a','b','d'])}
>>> pd.DataFrame(d)
  one two
a 1.0 2.0
b 2.0 3.0
c 3.0 NaN
d NaN 4.0

   2、从字典创建

 >>> pd.DataFrame(d,index=['a','b'],columns=['w1','w2'])
w1 w2
a NaN NaN
b NaN NaN
>>> pd.DataFrame(d,index=['a','b'],columns=['one','two'])
one two
a 1 2
b 2 3

五、DataFrame的数据筛选

  与Series类似,可通过布尔表达式按照一定条件进行筛选。不同于Series的是,DataFrame布尔筛选返回的是满足筛选条件的样本的所有列的数据(即:一返回就是一条记录)。

  上例子!

 >>> d = {'one':pd.Series([1,2,3],index=['a','b','c']),'two':pd.Series([2,3,4],index=['a','b','d'])}
>>> pd.DataFrame(d)
>>> d[d['one']<3]
one two
a 1.0 2.0
b 2.0 3.0

六、DataFrame的删除和添加一列

  添加一列:(1)像字典一样通过赋值的方式执行

 >>> d['three']=d['one']+d['two']

        (2)使用insert()在指定位置插入一列,例如在位置1插入新的一列'new',值为0

>>> d.insert(1,'new',np.zeros((4,1)))
>>> d
one new two three
a 1.0 0.0 2.0 3.0
b 2.0 0.0 3.0 5.0
c 3.0 0.0 NaN NaN
d NaN 0.0 4.0 NaN

  删除一列:像字典一样------>使用pop()或者del(),pop()可以在删除列的基础之上将删除的列赋值给一个新的变量

 >>> del d['three']
>>> d
one new two
a 1.0 0.0 2.0
b 2.0 0.0 3.0
c 3.0 0.0 NaN
d NaN 0.0 4.0
>>> new = d.pop('new')
>>> d
one two
a 1.0 2.0
b 2.0 3.0
c 3.0 NaN
d NaN 4.0
>>> new
a 0.0
b 0.0
c 0.0
d 0.0
Name: new, dtype: float64

六、DataFrame修改索引名:使用rename()方法

 >>> d
one two
a 1.0 2.0
b 2.0 3.0
c 3.0 NaN
d NaN 4.0
>>> i = {'a':'A','b':'B'}
>>> d.rename(index=i)
one two
A 1.0 2.0
B 2.0 3.0
c 3.0 NaN
d NaN 4.0

3-Pandas之Series和DataFrame区别的更多相关文章

  1. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  2. Python之Pandas中Series、DataFrame

    Python之Pandas中Series.DataFrame实践 1. pandas的数据结构Series 1.1 Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一 ...

  3. Python之Pandas中Series、DataFrame实践

    Python之Pandas中Series.DataFrame实践 1. pandas的数据结构Series 1.1 Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一 ...

  4. Pandas中Series和DataFrame的索引

    在对Series对象和DataFrame对象进行索引的时候要明确这么一个概念:是使用下标进行索引,还是使用关键字进行索引.比如list进行索引的时候使用的是下标,而dict索引的时候使用的是关键字. ...

  5. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  6. pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  7. pandas学习series和dataframe基础

    PANDAS 的使用 一.什么是pandas? 1.python Data Analysis Library 或pandas 是基于numpy的一种工具,该工具是为了解决数据分析人物而创建的. 2.p ...

  8. [Python] Pandas 中 Series 和 DataFrame 的用法笔记

    目录 1. Series对象 自定义元素的行标签 使用Series对象定义基于字典创建数据结构 2. DataFrame对象 自定义行标签和列标签 使用DataFrame对象可以基于字典创建数据结构 ...

  9. pandas中series和dataframe之间的区别

    series结构有索引,和列名组成,如果没有,那么程序会自动赋名为None series的索引名具有唯一性,索引可以数字和字符,系统会自动将他们转化为一个类型object. dataframe由索引和 ...

随机推荐

  1. (私人收藏)[开发必备]最全JQuery离线快速查找手册(可查询可学习,带实例)

    [开发必备]最全JQuery离线快速查找手册(可查询可学习,带实例) https://pan.baidu.com/s/16bUd4iA3p0c5RHbzaC60IQe4zh

  2. 每日一题 - 剑指 Offer 31. 栈的压入、弹出序列

    题目信息 时间: 2019-06-25 题目链接:Leetcode tag:栈 难易程度:中等 题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入 ...

  3. tabBar配置和修改

    1.tabBar(底部导航栏) 属性 默认值 描述 平台支持 color   tab上未被选中时文字的颜色   selectedColor   tab上被选中时文字的颜色   backgroundCo ...

  4. Node js 入门指南(1)

    目录 Node Js 定义 特点 Node使用方式 Tip: 使用导出文件的注意事项 Node 内置模块 http 模块 定义 使用方法 fs 模块 定义 使用方法 读取文件方式 同步读取 异步读取 ...

  5. web notification api

    Web Notifications API 使页面可以发出通知,通知将被显示在页面之外的系统层面上(通常使用操作系统的标准通知机制,但是在不同的平台和浏览器上的表现会有差异) 要显示一条通知,你需要先 ...

  6. 数据分析04 /基于pandas的DateFrame进行股票分析、双均线策略制定

    数据分析04 /基于pandas的DateFrame进行股票分析.双均线策略制定 目录 数据分析04 /基于pandas的DateFrame进行股票分析.双均线策略制定 需求1:对茅台股票分析 需求2 ...

  7. Python网络编程03 /缓存区、基于TCP的socket循环通信、执行远程命令、socketserver通信

    Python网络编程03 /缓存区.基于TCP的socket循环通信.执行远程命令.socketserver通信 目录 Python网络编程03 /缓存区.基于TCP的socket循环通信.执行远程命 ...

  8. hihoCoder 1052 基因工程 最详细的解题报告

    题目来源:基因工程 解题思路:假设基因序列长度为N,则需要计算基因序列前K个和后K个相同所需要的最少改变次数sum. 假设基因序列为 ATACGTCT (即M=8),K=6:interval=M-K= ...

  9. oracle 12c数据库在Windows环境下的安装

    ​    因为菜鸟小白之前做着一些数据库审计产品的测试,接下来我会分享一些关于数据库安装和通过python的访问数据库的知识 安装 首先我们需要下载一个oracle 12c的安装程序,解压后右键点击“ ...

  10. 【一起学系列】之命令模式:封装一个简单Jedis

    意图 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可撤销的操作. 命令模式的诞生 [产品]:开发小哥,来活啦,咱们需要设计一款遥控器,核心功能就 ...