一.pandas概述
Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据
Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征
Pandas 广泛应用在学术、金融、统计学等各个数据分析领域
Pandas 的出现使得 Python 做数据分析的能力得到了大幅度提升,它主要实现了数据分析的五个重要环节:加载数据、整理数据、操作数据、构建数据模型、分析数据
二.安装
在cmd打开命令终端后,激活conda,进入要下载pandas的环境中输入:
1
| pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple/
|
三.内置数据结构
是带标签的一维数组,这里的标签可以理解为索引,但这个索引并不局限于整数,它也可以是字符类型,比如 a、b、c 等。
是一种表格型数据结构,它既有行标签,又有列标签,都可以是字符串。默认都是0、1、2、3、4、5 等索引,可自定义。
四.Series
1
| pandas.Series(data,index,dtype)
|
4.1 创建对象
1 2 3 4 5 6 7 8
| import pandas as pd data = pd.Series() print(data) print(type(data))
|
结果:
1 2
| Series([], dtype: object) <class 'pandas.core.series.Series'>
|
1 2 3 4 5 6
| import pandas as pd
s = pd.Series([1,2,3,4,5],dtype='float') print(s)
|
结果:
1 2 3 4 5 6
| 0 1.0 1 2.0 2 3.0 3 4.0 4 5.0 dtype: float64
|
1 2 3 4 5 6 7
| import pandas as pd import numpy as np
s = pd.Series(np.array([1, 2, 3, 4])) print(s)
|
结果:
1 2 3 4 5
| 0 1 1 2 2 3 3 4 dtype: int32
|
1 2 3 4 5 6 7 8
| import pandas as pd import numpy as np
dic = {'name':'zhangsan','age':18,'sex':'male'} s = pd.Series(dic) print(s)
|
结果:
1 2 3 4
| name zhangsan age 18 sex male dtype: object
|
1 2 3 4 5 6 7 8 9 10
| import pandas as pd data = [10, 20, 30, 40, 50] index = ['a', 'b', 'c', 'd', 'e'] series1 = pd.Series(data, index=index)
series2 = pd.Series(series1, index=['gg', 'd', 'c', 'b', 'a']) print(series2)
|
结果:
1 2 3 4 5 6
| gg NaN d 40.0 c 30.0 b 20.0 a 10.0 dtype: float64
|
4.2 访问Series 数据
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| import pandas as pd
s = pd.Series([1, 3, 5, 6, 8, 10])
print(s[0])
print()
print(s[:2])
|
结果:
1 2 3 4 5 6 7
| 1
0 1 1 3
dtype: int64
|
1 2 3 4 5 6
| s1 = pd.Series([1,2,3,4,5], index=['a','b','c','d','e']) print(s1['d'])
print(s1['a':'c'])
|
结果:
1 2 3 4 5
| 4 a 1 b 2 c 3 dtype: int64
|
这里还要注意一个之前讲列表时的细节,那就是切片访问元素时,会返回原数据类型的相同的数据类型,其中包含切片的值,也就是Seres切片之后还是返回一个Series对象,不单返回值。
4.3 遍历series元素
4.3.1 遍历index
1 2 3 4 5 6 7 8
| import pandas as pd s = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e'])
for i in s.index: print(i,s[i])
|
结果:
4.3.2 遍历values
1 2 3 4 5 6 7
| import pandas as pd s = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e'])
for i in s.values: print(i)
|
结果:
4.3.3 items()
1 2 3 4 5 6 7 8 9 10 11 12 13
| import pandas as pd s = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e'])
for i in s.items(): print(i)
print() for key,value in s.items(): print(key,value)
|
结果:
1 2 3 4 5 6 7 8 9 10 11
| ('a', 1) ('b', 2) ('c', 3) ('d', 4) ('e', 5)
a 1 b 2 c 3 d 4 e 5
|