包含序列Series和数据框DataFrame两种数据结构
Series类似numpy的一维数组
一维数组创建
字典创建
DataFrames某一行或者列创建
DataFrames类似numpy的二维数组
二维数组创建
字典创建
数据框创建
index属性获取序列的索引
import pandas as pd
s=pd.Series([1,2,3,4,5])
s.index#看索引
RangeIndex(start=0, stop=5, step=1)
s.index=['a','b','c','d','e']#索引赋值
s[0]
1
s['a']
1
s[:3]#前三个,位置获取
a 1
b 2
c 3
dtype: int64
s['c':]#索引获取
c 3
d 4
e 5
dtype: int64
# 自动化对其
Pandas查询数据
data=pd.DataFrame({
'a':[1,2,3,4,5,6,7],'b':[1,2,3,4,5,6,7],'c':[1,2,3,4,5,6,7]})
data
a | b | c | |
---|---|---|---|
0 | 1 | 1 | 1 |
1 | 2 | 2 | 2 |
2 | 3 | 3 | 3 |
3 | 4 | 4 | 4 |
4 | 5 | 5 | 5 |
5 | 6 | 6 | 6 |
6 | 7 | 7 | 7 |
#查看前五行,末尾五行
data.head()
data.tail()
#查看指定的行,两层括号
data.iloc[[0,1]]
a | b | c | |
---|---|---|---|
0 | 1 | 1 | 1 |
1 | 2 | 2 | 2 |
#查看指定的列,两层括号
data[['a','b']]
a | b | |
---|---|---|
0 | 1 | 1 |
1 | 2 | 2 |
2 | 3 | 3 |
3 | 4 | 4 |
4 | 5 | 5 |
5 | 6 | 6 |
6 | 7 | 7 |
#同时查看行与列
data.loc[[0,1],['a','b']]
a | b | |
---|---|---|
0 | 1 | 1 |
1 | 2 | 2 |
#具体值的多个条件查询
data[(data['a']>1)&(data['b']>1)][['a','b']]
a | b | |
---|---|---|
1 | 2 | 2 |
2 | 3 | 3 |
3 | 4 | 4 |
4 | 5 | 5 |
5 | 6 | 6 |
6 | 7 | 7 |
统计分析
import numpy as np
a=np.random.normal(size=15)#正态分布
da=pd.Series(2*a+3)
db=np.random.f(2,4,size=15)#浮点数
dc=np.random.randint(1,100,size=15)#随机整数
print(da)
print(db)
print(dc)
0 1.470286
1 0.533744
2 2.600050
3 -3.209468
4 2.574417
5 0.155033
6 7.886463
7 0.723382
8 3.801481
9 3.328130
10 1.369691
11 5.334218
12