pandas
pandas中主要有两种数据结构,分别是:Series和DataFrame。
series
- Series:一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据也可产生简单的Series对象。注意:Series中的索引值是可以重复的。
- DataFrame:一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典
结论:DataFrame是一个多维数组,
import pandas as pd
import numpy as np
#企业命名规范
ser01=pd.Series([1,2,3,4,5])
print('series数据的值:',ser01.values)
print('series的索引值:',ser01.index)
print('series的数据类型:',ser01.dtype)
#series的数据类型完全遵守numpy的数据类型
print(ser01)
#利用series创建一个二位数组
ser02=pd.Series(np.array([[1,2,3,4],[1,2,3]]))
#表示的是将numpy里面的array创建多维数组的方法,嵌套到series里面,用于创建多个维度数
print('series数据的值:',ser02.values)
print('series的索引值:',ser02.index)
print('series的数据类型:',ser02.dtype)
print(ser02)
#为索引index创建一个名称
ser03=pd.Series([100,99,92,69])
ser03.index=[u'数学',u'语文',u'化学',u'英语']
#u表示的是一个标识符关键字和索引位置是一样的
print(ser03)
#企业的另一种写法:
ser04=pd.Series(data=[100,54,67,78],dtype=np.float,index=['数学','语文','化学','英语'])
print(ser04)
ser05=pd.Series([[1,2,3],[3,4,5]])
print(ser05)
#通过字典创建一个series多维数组
dict01=({
'1001':'milong','1002':'ruohao','1003':'yuanyuan','1004':'taotao','1005':'kaikai'})
ser06=pd.Series(dict01)
print(ser06)
print('通过dict创建的类型:',ser06.values)#暗含通过key值,只打印值,不打印key,打印key不安全
print('通过dict创建的类型:',ser06.index)#通过字典创建的index,其实就是key
series数据的值: [1 2 3 4 5]
series的索引值: RangeIndex(start=0, stop=5, step=1)
series的数据类型: int64
0 1
1 2
2 3
3 4
4 5
dtype: int64
series数据的值: [list([1, 2, 3, 4]) list([1, 2, 3])]
series的索引值: RangeIndex(start=0, stop=2, step=1)
series的数据类型: object
0 [1, 2, 3, 4]
1 [1, 2, 3]
dtype: object
数学 100
语文 99
化学 92
英语 69
dtype: int64
数学 100.0
语文 54.0
化学 67.0
英语 78.0
dtype: float64
0 [1, 2, 3]
1 [3, 4, 5]
dtype: object
1001 milong
1002 ruohao
1003 yuanyuan
1004 taotao
1005 kaikai
dtype: object
结果:Series通过下标index可以获取值,并且Series是创建一个一维数组
- 在pandas里面下标,索引一般叫做数据标签(数据标签是我们在AI,Python数据分析,大数据,数据挖掘里面获取数据集的核心标签)
数据标签不分数据的大小,1行数据也可以通过数据标签获取,海量数据也可以通过数据标签获取—企业大量使用 - 因为series只能创建一维数组,如果想创建二维数组,那么就必须导入numpy模块.利用np.array(多维数组)—形成维度空间(矩阵)
- ser03,index=[u’数学’,u’语文’,u’化学’,u’英语’]此写法不写index,直接给index赋列值
- ser04=pd.Series(data=[100,54,67,78],dtype=np.float,index=[‘数学’,‘语文’,‘化学’,‘英语’])
ser04里面有4个参数,data是数据,dtype=是根据项目数据要求定制数据类型,因为series默认的是整型index直接赋值
备注:不建议data和index分开来写,建议第四种写法