利用 Python 进行数据分析(八)pandas 基本操作(Series 和 DataFrame)


一、reindex() 方法:重新索引


针对 Series

 

重新索引指的是根据index参数重新进行排序。

如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行。

不想用缺失值,可以用 fill_value 参数指定填充值。

例如:

fill_value 会让所有的缺失值都填充为同一个值,如果不想这样而是用相邻的元素(左或者右)的值填充,则可以用 method 参数,可选的参数值为 ffill 和 bfill,分别为用前值填充和用后值填充:


针对 DataFrame

 

重新索引操作:


二、drop() 方法:丢弃数据

 


针对 Series

 


针对 DataFrame

不仅可以删除行,还可以删除列:


三、索引、选取和过滤

 


针对 Series

 

需要注意一点的是,利用索引的切片运算与普通的 Python 切片运算不同,其末端是包含的,既包含最后一个的项。比较:

赋值操作:


针对 DataFrame

DataFrame 中的 ix 操作:


四、算术运算和数据对齐


针对 Series

将2个对象相加时,具有重叠索引的索引值会相加处理;不重叠的索引则取并集,值为 NA:


针对 DataFrame

对齐操作会同时发生在行和列上,把2个对象相加会得到一个新的对象,其索引为原来2个对象的索引的并集:

和Series 对象一样,不重叠的索引会取并集,值为 NA;如果不想这样,试试使用 add() 方法进行数据填充:


五、函数应用和映射

将一个 lambda 表达式应用到每列数据里:

除了lambda 表达式还可以定义一个函数:


六、排序


针对 Series


针对 DataFrame


七、排名

 

八、带有重复值的轴索引

索引不强制唯一,例如一个重复索引的 Series:

安装步骤已经在首篇随笔里写过了,这里不在赘述。利用 Python 进行数据分析(一)简单介绍

接下来一篇随笔内容是:利用 Python 进行数据分析(九)pandas - 汇总统计和计算,有兴趣的朋友欢迎关注本博客,也欢迎大家添加评论进行讨论。

时间: 2024-08-05 11:11:02

利用 Python 进行数据分析(八)pandas 基本操作(Series 和 DataFrame)的相关文章

利用Python进行数据分析(11) pandas基础: 层次化索引

层次化索引 层次化索引指你能在一个数组上拥有多个索引,例如: 有点像Excel里的合并单元格对么? 根据索引选择数据子集 以外层索引的方式选择数据子集: 以内层索引的方式选择数据: 多重索引Series转换为DataFrame 层次化索引在数据重塑和分组中扮演着很重要的角色,例如,上面的层次化索引数据可以转换为一个DataFrame: 对于一个DataFrame,横轴和竖轴都可以有层次化索引,例如: 重排分级顺序 根据索引交换 swaplevel()函数可以将两个级别的数据进行交换,例如: 根据

利用Python进行数据分析(15) pandas基础: 字符串操作

  字符串对象方法 split()方法拆分字符串: strip()方法去掉空白符和换行符: split()结合strip()使用: "+"符号可以将多个字符串连接起来: join()方法也是连接字符串,比较它和"+"符号的区别: in关键字判断一个字符串是否包含在另一个字符串中: index()方法和find()方法判断一个子字符串的位置: index()方法和find()方法的区别是:如果不包含子字符串,index()会抛出一个异常,而find()会返回-1. c

利用Python进行数据分析(14) pandas基础: 数据转换

数据转换指的是对数据的过滤.清理以及其他的转换操作. 移除重复数据 DataFrame里经常会出现重复行,DataFrame提供一个duplicated()方法检测各行是否重复,另一个drop_duplicates()方法用于丢弃重复行: duplicated()和drop_duplicates()方法默认判断全部列,如果不想这样,传入列的集合作为参数可以指定按列判断,例如: duplicated()和drop_duplicates()方法默认保留第一个出现的值,传入take_last=True

利用 Python 进行数据分析(七)- pandas 简单介绍(Series和DataFrame)

一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构:Series 和 DataFrame. 二.Series Series 是一个一维数组对象 ,类似于 NumPy 的一维 array.它除了包含一组数据还包含一组索引,所以可以把它理解为一组带索引的数组. 将 Python 数组转换成 Series 对象: 将 Python 字典转换成 Serie

利用 Python 进行数据分析(十二)pandas:数据合并

pandas 提供了三种主要方法可以对数据进行合并: pandas.merge()方法:数据库风格的合并: pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起: 实例方法combine_first()方法:合并重叠数据. pandas.merge()方法:数据库风格的合并 例如,通过merge()方法将两个DataFrame合并: on='name'的意思是将name列当作键: 默认情况下,merge做的是内连接(inner),即键的交集. 其他方式还有左连接(lef

利用Python进行数据分析——pandas入门

利用Python进行数据分析--pandas入门 基于NumPy建立的 from pandas importSeries,DataFrame,import pandas as pd 一.两种数据结构 1.Series 类似于Python的字典,有索引和值 创建Series #不指定索引,默认创建0-N In [54]: obj = Series([1,2,3,4,5]) In [55]: obj Out[55]: 0 1 1 2 2 3 3 4 4 5 dtype: int64 #指定索引 In

《利用Python进行数据分析》之pandas的时间序列基础

本章以<利用python进行数据分析>的第10章:时间序列 为基础,整理了pandas 库中时间序列相关用法. 时间序列数据的意义取决于具体的应用场景,主要有以下几种: 时间戳(timestamp) 固定时期(period) 时间间隔(interval) 实验或过程时间 pandas提供了一组标准的时间序列处理工具和算法,可以轻松的对时间序列进行切片.聚合,对定期/不定期的时间序列进行重采样等. 这些工具大部分对金融和经济数据尤为有用,同时也可以用来分析服务器和日志数据. 1.日期和时间数据类

利用 Python 进行数据分析(九)pandas 汇总统计和计算

pandas 对象拥有一些常用的数学和统计方法.   例如,sum() 方法,进行列小计: sum() 方法传入 axis=1 指定为横向汇总,即行小计: idxmax() 获取最大值对应的索引: 还有一种汇总是累计型的,cumsum(),比较它和 sum() 的区别: unique() 方法用于返回数据里的唯一值: value_counts() 方法用于统计各值出现的频率: isin() 方法用于判断成员资格: 安装步骤已经在首篇随笔里写过了,这里不在赘述.利用 Python 进行数据分析(一

利用python进行数据分析——pandas与索引

1. pandas包括series.dataframe Series Series是一维的数组型对象. Series包含了索引index和值value.比如说: DataFrame DataFrame是矩阵的数组表. DataFrame既有行索引也有列索引,它可以被视为一个共享相同索引的Series的dict.比如说: 2. pandas的索引? 2.1 普通索引.切片索引 在这个对象中,索引可以表达为: 注意1:通过索引获取数据,如果获取一个值,不显示索引:如果获取多个值,显示索引. 注意2: