pandas库基础知识
一、jupyter 代码编辑器
Cell [sel] 细胞
jupyter 代码编辑器的一个代码单元,一般叫它 Cell。
Cell 是这款 jupyter 代码编辑器的主要构成要素。
代码的输入以及代码结果的输出都是在 Cell 中实现的。
Cell 一共由两个部分组成:In[] 和 Out[],即输入框和输出框。
Cell 在使用时有两个很重要的特点,第一点体现在查看变量的时候,第二点体现在变量值的传递上。查看变量值的时候,只要输入变量名就可以了。
jupyter 代码编辑器第二个特点:当前的 Cell 可以沿用之前 Cell 的运算结果,也就是变量的值是可以传递的。
下面讲解的pandas库知识点中的代码运行示例均是在 jupyter 代码编辑器环境下的示例
概述:Python 数据分析库介绍
二、pandas 库基础知识
pandas [ˈpændəz] 熊猫
pandas 库是一个专门用来解决数据分析问题的库。
pandas 库有以下两大优势:
1)速度快:快速处理大型数据集;
2)效率高:提供大量高效处理数据的函数和方法。
import pandas as pd #导入 pandas 库 简化为 pd
pandas 库提供了两种数据结构:Series 和 DataFrame,来提升操作速度和效率。
(1)常用的Series属性与方法:
s.index #查看索引
s.values #查看数值
s.isnull() #查看为空的,返回布尔型
s.sort_index() #按索引排序
s.sort_values() #按数值排序
(2) DataFrame常用方法
df.head( 5 ) #查看前5行
df.tail( 3 ) #查看后3行
df.values #查看数值
df.index #查看索引
df.shape #查看行数、列数
df.fillna(0) #将空值填充0
df.replace(1, -1) #将1替换成-1
df.isnull() #查找df中出现的空值
df.dropna() #删除空值
df.unique() #查看唯一值
df.reset_index() #修改、删除,原有索引
df.columns #查看df的列名
df.sort_values() #排序
1、Series对象
Series [ˈsɪəriːz] 系列
Series 主要由一组数据及其对应的索引组成。
在上面的例子中,我们还可以在数据的底部看到这样一行信息:dtype: object。
其中,dtype 指的是 pandas 库中的数据类型,object 就等价于之前 python 学过的字符串类型。
dtype 为 object 指的就是,Series 对象中的数据,至少有一条是字符串类型的。
pd.Series() 就是创建 Series 对象的方法。
2.1.1、 借助列表来创建 Series 对象的方法,也就是:pd.Series(data)
#创建Series对象
surname = pd.Series(['赵', '钱', '孙', '李'])
#查看surname
surname
0 赵
1 钱
2 孙
3 李
dtype: object
在这个案例中,是将一个列表:[‘赵’, ‘钱’, ‘孙’, ‘李’],传给了参数 surname。
当我们将列表传给参数 data 之后,在默认情况下,pd.Series(data) 会自动为列表中的每一个元素分配对应的数字索引。
默认索引是从 0 开始,以 0, 1, 2, 3,… 的形式按序分配给列表中的元素。
Series 对象应用示例,把temp_list1 = [1, 2, 3, 4]
temp_list2 = [5, 6, 2, 3] 2个列表中的元素一一对应相加
1、 用之前学过的列表、循环等知识来解决这个问题
# 创建两个原始列表
temp_list1 = [1, 2, 3, 4]
temp_list2 = [5, 6, 2, 3]
# 创建新列表 temp_list_new
temp_list_new = []
# 将两个原始列表的元素之和添加进 temp_list_new
for i in range(len(temp_list1)):
temp_list_new.append(temp_list1[i] + temp_list2[i])
# 查看新列表 temp_list_new
temp_list_new 返回:[6, 8, 5, 7]
2、用 Series 对象中的方法来求这个新列表。
# 创建两个原始列表
temp_list1 = [1, 2, 3, 4]
temp_list2 = [5, 6, 2, 3]
# 创建新的 Series 对象
temp_s = pd.Series(temp_list1) + pd.Series(temp_list2)
# 查看 temp_s
temp_s
终端:
0 6
1 8
2 5
3 7
dtype: int64
2、 DataFrame对象
Data-- [ˈdeɪtə] – 数据 , frame – [freɪm]–框架
2.1、借助字典来创建 DataFrame 对象的方法,也就是:pd.DataFrame(data)
DataFrame对象是一种表格型的数据结构,包含行索引、列索引以及一组数据。
图示:
创建 DataFrame 对象的方法是:pd.DataFrame()
DataFrame 对象的参数可以是字典,示例: