pandas入门(一)
2018-01-07 19:23
351 查看
pandas系列—pandas库简介
一、pandas概述
pandas是提供高性能易用数据类型和分析工具的第三方库 导入:
import pandas as pd1
注:pandas库是基于Numpy实现的
一个简单的小例子:
import pandas as pd e=pd.Series(range(5)) e1
2
3
4
Out[7]:
0 0
1 1
2 2
3 3
4 4
dtype: int32
其中,左面一列为索引,右面一列为数据
二、pandas的数据类型
pandas主要提供两种数据类型:Series和DataFrame 其中,Series用来表示一维数据,DataFrame主要用来表示二维数据,也可表示多维数据。这两种数据类型在后面会详细介绍。
三、Numpy和Pandas对比
Numpy | Pandas |
---|---|
基础数据类型 | 扩展数据类型 |
关注数据的结构表达 | 关注数据的应用表达 |
维度:数据间的关系 | 数据与索引间的关系 |
pandas系列—pandas库的Series类型
pandas系列pandas库的Series类型一Series概述
二创建Series类型的方法
1
从标量值创建
2
从字典类型创建
3
从ndarray类型创建
三Series类型的基本操作
1
简单的操作
3
Series类似ndarray类型的操作
3
Series类似python字典类型的操作
4
Series类型的对齐操作
5
Series类型的name属性
6
Series类型的修改
一、Series概述
Series是由一组数据及与之相关的数据索引组成 例子:
import pandas as pd a = pd.Series([9,8,7,6]) #自动索引 print(a)1
2
3
4
运行结果:
0 9
1 8
2 7
3 6
dtype: int64
import pandas as pd b = pd.Series([9,8,7,6],index=['a','b','c','d']) #自定义索引 print(b)1
2
3
4
运行结果:
a 9
b 8
c 7
d 6
dtype: int64
二、创建Series类型的方法
Series类型可由如下类型创建:python列表、标量值、python字典、ndarray、其他函数
2.1 从标量值创建
import pandas as pd a = pd.Series(25,index=['a','b','c','d']) print(a)1
2
3
4
运行结果:
a 25
b 25
c 25
d 25
dtype: int64
2.2 从字典类型创建
例子1:import pandas as pd b = pd.Series({'a':9,'b':8,'c':7}) print(b)1
2
3
4
运行结果:
a 9
b 8
c 7
dtype: int64
例子2:
import pandas as pd c = pd.Series({'a':9,'b':8,'c':7},index=['c','a','b','d']) print(c)1
2
3
4
运行结果:
c 7.0
a 9.0
b 8.0
d NaN
dtype: float64
2.3 从ndarray类型创建
import pandas as pd import numpy as np d = pd.Series(np.arange(5)) e = pd.Series(np.arange(5),index = np.arange(9,4,-1)) print(d) print(e)1
2
3
4
5
6
7
运行结果:
0 0
1 1
2 2
3 3
4 4
dtype: int32
9 0
8 1
7 2
6 3
5 4
dtype: int32
三、Series类型的基本操作
3.1 简单的操作
Series类型包括index和values两部分import pandas as pd g = pd.Series([9,8,7,6],['a','b','c','d']) g Out[16]: a 9 b 8 c 7 d 6 g.index Out[18]: Index(['a', 'b', 'c', 'd'], dtype='object') g.values Out[19]: array([9, 8, 7, 6], dtype=int64) g['b'] Out[20]: 8 g[1] Out[21]: 8 dtype: int64 g[['c','d',0]] #自定义索引和自动索引不能混合使用 Out[24]: c 7.0 d 6.0 0 NaN dtype: float64 g[['c','d','a']] Out[25]: c 7 d 6 a 9 dtype: int641
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
3.3 Series类似ndarray类型的操作
import pandas as pd m = pd.Series([9,8,7,6],['a','b','c','d']) m Out[32]: a 9 b 8 c 7 d 6 dtype: int64 m[3] Out[33]: 6 m[:3] Out[34]: a 9 b 8 c 7 dtype: int64 m[m>m.median()] Out[35]: a 9 b 8 dtype: int64 np.exp(m) Out[36]: a 8103.083928 b 2980.957987 c 1096.633158 d 403.428793 dtype: float641
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
3.3 Series类似python字典类型的操作
import pandas as pd h = pd.Series([9,8,7,6],['a','b','c','d']) h['b'] Out[27]: 8 'c' in h #保留字in只会判断自定义索引 Out[28]: True 0 in h Out[29]: False b.get('f',100) #若存在,就返回‘f’对应的值,若不存在,就返回100 Out[30]: 1001
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
3.4 Series类型的对齐操作
Series在运算中回自动对齐不同索引的数据import pandas as pd p = pd.Series([9,8,7,6],['a','b','c','d']) q = pd.Series([1,2,3],['c','b','e']) p+q Out[39]: a NaN b 10.0 c 8.0 d NaN e NaN dtype: float641
2
3
4
5
6
7
8
9
10
11
12
13
14
3.5 Series类型的name属性
Series对象和索引都可以都一个名字,存储在属性.name中import pandas as pd s = pd.Series([9,8,7,6],['a','b','c','d']) s Out[42]: a 9 b 8 c 7 d 6 dtype: int64 s.name s.name='Series对象' s.index.name='索引列' s Out[46]: 索引列 a 9 b 8 c 7 d 6 Name: Series对象, dtype: int641
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
3.6 Series类型的修改
import pandas as pd t = pd.Series([9,8,7,6],['a','b','c','d']) t['a']=15 t.name = 'Series' t Out[50]: a 15 b 8 c 7 d 6 Name: Series, dtype: int64 t.name='New Series' t['b','c']=20 t Out[53]: a 15 b 20 c 20 d 6 Name: New Series, dtype: int641
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
注1:Series是一维带标签数组
注2:Series基本操作类似ndarray和字典,根据索引对齐
相关文章推荐
- Python点滴(四)—pandas快速入门使用
- 十分钟入门pandas框架及补充解释
- Pandas入门(二)——DataFrame结构及常用操作
- python机器学习库入门之pandas
- Python pandas快速入门
- 确定你掌握了pandas?进来看看——python中pandas入门基础练习
- Python编程:pandas入门
- pandas入门(一)
- pandas入门——数据的创建与基本操作
- pandas入门——数据缺失值处理
- python pandas10分钟入门
- pandas入门学习
- 第五章:pandas入门Day8-11
- 利用Python进行数据分析——pandas入门(五)(4)
- pandas入门
- Python——数据分析Pandas入门
- Pandas入门学习总结
- Python数据分析入门-Pandas环境搭建
- pandas入门(二)
- Python——Pandas库入门