python数据科学—Pandas

学习笔记


目录

Pandas对象:
数据的取值与选择
Pandas数值运算方法
缺失值的处理:
层级索引:
合并与连接数据集:
累积与分组:


Pandas库

Pandas对象:
Pandas有三个基本数据结构:Series、DataFrame和Index

  • Series对象:Series对象与一维的NumPy数组很像,本质的差异是前者多了索引。这个索引可以是隐式的,也可以利用index参数显示定义。所以说Series是特殊的字典。
    在这里插入图片描述
    注:与字典不同的是,Series对象还支持数组形式的操作,如通过切片(索引)获取Series的一部分。

  • DataFrame对象:如果将Series类比为带灵活索引的一维数组,那么DataFrame就可以看作是一种既有灵活行索引,又有灵活列名的二位数组。我们也可以把DataFrame看成是有序排列的若干Series对象。形如:
    在这里插入图片描述
    注:DataFrame的index属性可以获取索引标签(行);columns属性则是存放列标签的Index对象。

  • Index对象:可将其看作一个不可变数组或有序集合,其许多操作都像数组,与NumPy数组对象有许多相似的属性,还能进行并集、交集、差集等操作。

数据的取值与选择:

  • Series:不仅有和字典一样的接口,还具备和NumPy数组一样的数据选择功能,包括索引、掩码、花哨的索引等操作;
  • DataFrame:可以通过列名获取某一列的数据,此外许多性质和Series对象类似,且许多用于处理NumPy形式数据的方法(如索引器等)都可以用于DataFrame对象;

Pandas数值运算方法:
Pandas是建立在NumPy基础之上的,继承了其的功能,所以NumPy的通用函数同样适用于Pandas的Series和DataFrame对象。

  • 对于一元运算,这些通用函数将在输出结果中保留索引和列标签;
  • 对于二元运算,Pandas在传递通用函数时会自动对齐索引进行计算,其中包含对缺失值的自动处理,及对广播规则等的遵守。

缺失值的处理:
主要形式有:null、NaN、NA

  • 识别缺失值的两种方法:①通过一个覆盖全局的掩码表示缺失值;②用一个标签值表示缺失值;
  • 发现缺失值的两种方法:isnull()和notnull()。每种方法都返回布尔类型的掩码数据,可直接作为Series或DataFrame对象的索引使用;
  • 剔除缺失值的两种方法:dropna()(剔除缺失值)和fillna()(填充缺失值)。其中.dropna()默认剔除包含缺失值的整行,可用.dropna(axis=‘columns’)来设置为剔除包含缺失值整列;
  • 填充缺失值的方法:fillna()方法,它会返回填充了缺失值后的数组副本,可通过传递数值来设置替换值,也可通过设置参数method=‘ffill’或method=‘bfill’来设置用缺失值前面或后面的有效值来填充。

层级索引:

  • 可以对Series设置多级索引;
  • 可以将多级索引的Series对象转化为普通索引的DataFrame;
  • 可以直接创建多级索引的DataFrame对象,并通过多级索引进行取值或切片等。

合并与连接数据集:

  • 涉及索引重复的默认处理,多级索引添加等;
  • 不同的合并形式包括:①一对一连接;②多对一连接;③多对多连接;
  • 可以通过参数指定列名(一个或多个)为合并依据,且可设置连接形式如:内/外连接或左/右连接;

累积与分组:

  • Pandas的DataFrame对象的累积与Series对象的区别在于需要注意累积的是行还是列,DataFrame的累积函数默认对每列进行统计,通过设置参数axis=‘columns’可以使其对每行进行累积;
  • 累积函数如:
    在这里插入图片描述
    注:DataFrame和Series对象支持上面所有方法。DataFrame的describe()方法可以一次性获得所有累计值。
  • 还有其他操作如:累积、过滤、转换和应用等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值