文档详情

数据分析教学 —— pandas数据结构.docx

发布:2020-10-30约5.17千字共15页下载文档
文本预览下载声明
PAGE 15 数据分析教学 —— pandas数据结构 一、Pandas数据结构 Pandas处理有三种数据结构形式:Series,DataFrame, index。Series和DataFrame是现在常用的两种数据类型。 1. Series Series和一维数组很像,只是它的每一个值都有一个索引,输出显示时索引在左,值在右。 pandas.Series( data, index=index, dtype, copy) data: 可以是多种类型,如列表,字典,标量等 index: 索引值必须是唯一可散列的,与数据长度相同,如果没有索引被传递,则默认为**np.arrange(n)** dtype: 设置数据类型 copy: 复制数据,默认为Flase 1)创建一个空的序列 import numpy as np import pandas as pd # 利用Series序列构造函数 # 创建一个空序列 s = pd.Series() print(s) 输出:Series([], dtype: float64) 2)从ndarray创建一个序列: 如果数据是ndarray,则传递的索引必须具有相同的长度。如果没有索引被传递,那么默认情况下,索引将是 range(n) ,其中 n 是数组长度,即[0,1,2,3 ...。 范围(LEN(阵列)) - 1]。 # 使用ndarray创建一个序列 data = np.array([a,b,c,d]) s = pd.Series(data) print(s) 输出: 0 a 1 b 2 c 3 d dtype: object 不给赋索引值时,默认的索引范围为1~(len(data)-1) 3)传入索引值: # 传入索引值 data = np.array([a,b,c,d]) s = pd.Series(data,index=[12, 13, 14,15]) print(s) 输出: 12 a 13 b 14 c 15 d dtype: object 4)从字典创建一个序列: 当所创建的索引中,未给赋值时,也即缺少元素是,用NAN填充 data = {a:0,b:1,c:2.} s= pd.Series(data, index=[b,a,c,d]) print(s) 输出: b 1.0 a 0.0 c 2.0 d NaN dtype: float64 5)用标量创建一个序列: # 从标量创建一个序列 s= pd.Series(5, index=[a,b,c,d]) print(s) 输出: a 5 b 5 c 5 d 5 dtype: int64 6)检索数据: data = [1, 2, 3, 4] s= pd.Series(data, index=[a,b,c,d]) print(s[d]) # 检索索引为d的数据 print(s[-3:]) # 检索后3个数据 输出: 4 b 2 c 3 d 4 dtype: int64 2. DataFrame DataFrame是一个2维标签的数据结构,它的列可以存在不同的类型。你可以把它简单的想成Excel表格或SQL Table,或者是包含字典类型的Series。它是最常用的Pandas对象。和Series一样,DataFrame接受许多不同的类型输入。 pandas.DataFrame( data, index, columns, dtype) data: 包含一维数组,列表对象, 或者是Series对象的字典对象 index :对于行标签,如果没有索引被传递,则要用于结果帧的索引是可选缺省值np.arrange(n)。 columns: 对于列标签,可选的默认语法是 - np.arrange(n)。这只有在没有通过索引的情况下才是正确的。 dtype: 每列的数据类型 1) 创建一个空的DataFrame # 创建一个空的DataFrame import pandas as pd df = pd.DataFrame() print(df) 输出: Empty DataFrame Columns: [] Index: [] 2) 从列表中创建一个DataFrame DateFrame可以使用单个列表或者列表列表创建 data = [1, 2, 3,4, 5] df = pd.DataFrame(data) print(df) 输出: 0 0 1 1 2 2 3 3 4 4 5 data = [[Al, 9],[Bl, 8],[Cl, 10]] # dt
显示全部
相似文档