-
PANDAS
image.png
1.1 PANDAS介绍
它是python数据分析方向的一个基石库,基于Numpy 来做数据分析(传统的数据分析工具),数据处理效率高
1.1 常用文件格式
1.2 PANDAS基本数据结构
Pandas 处理以下三个数据结构:
Ø 系列(Series) 一维
Ø 数据帧(DataFrame) 二维
Ø 面板(Panel) 三维 (数据帧按时间维度排列) -
数据处理
2.1 基本使用
import numpy as np
import pandas as pd
data ={'animal':['cat' , 'cat' , 'snake' , 'dog' , 'dog' , 'cat' , 'snake' , 'cat', 'dog' , 'dog' ],
'age':[2.5, 3, 0.5, np.nan, 5, 2, 4.5, np.nan, 7, 3],
'visits':[1, 3, 2, 3, 2, 3, 1, 1, 2, 1],
'priority':['yes', 'yes', 'no', 'yes', 'no', 'no', 'no', 'yes', 'no', 'no']}
labels = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
df = pd.DataFrame(data, index=labels)
image.png
2.2 索引
- 简单索引
import numpy as np
import pandas as pd
# 以字典作为数据类型创建Series对象
s = pd.Series({'a':0,'b':1.,'c':2.},index=["a","b","c"])
print(s.values)
print(s.index)
print(s['a'])
print(s[['a','b']])
print(s[:2])
- 原始索引
原始索引就是类 list 的索引方式,当索引对象是切片时就是行索引。
df[1:3]
image.png
当索引对象是 list 时就是列索引。
df[['age', 'animal']] 或 df[[0,1]]
image.png
- 位置索引
df.iloc[0:2, 0:2]
image.png
- 标签索引
loc 与 iloc 的主要区别就是索引要用标签不能用序号。
df.loc[['a', 'b'], ['animal', 'age']]
image.png
- 条件索引
df[(df['animal'] == 'cat') & (df['age'] < 3)]
image.png
2.3 缺失数据/异常数据处理
- 找到缺失值
df[df['age'].isnull()]
image.png
- 填充缺失值
df['age'].fillna(0, inplace=True)
image.png
- 将字符值替换成布尔值
2.4 可视化数据
下面的示例加载了一个包含加利福尼亚州住房数据的csv文件。请运行以下单元格以加载数据,并创建特征定义:
california_housing_dataframe = pd.read_csv("california_housing_train.csv", sep=",")
california_housing_dataframe.describe()
longitude latitude ... median_income median_house_value
count 17000.000000 17000.000000 ... 17000.000000 17000.000000
mean -119.562108 35.625225 ... 3.883578 207300.912353
std 2.005166 2.137340 ... 1.908157 115983.764387
min -124.350000 32.540000 ... 0.499900 14999.000000
25% -121.790000 33.930000 ... 2.566375 119400.000000
50% -118.490000 34.250000 ... 3.544600 180400.000000
75% -118.000000 37.720000 ... 4.767000 265000.000000
max -114.310000 41.950000 ... 15.000100 500001.000000
示例使用 DataFrame.describe 来显示关于 DataFrame 的有趣统计信息。
另一个实用函数是 DataFrame.head,它显示 DataFrame 的前几个记录:
california_housing_dataframe.head(5)
longitude latitude ... median_income median_house_value
0 -114.31 34.19 ... 1.4936 66900.0
1 -114.47 34.40 ... 1.8200 80100.0
2 -114.56 33.69 ... 1.6509 85700.0
3 -114.57 33.64 ... 3.1917 73400.0
4 -114.57 33.57 ... 1.9250 65500.0
2.5 结构化查询数据
http://pandas.pydata.org/pandas-docs/stable/merging.html
http://pandas.pydata.org/pandas-docs/stable/io.html#sql-queries
2.6 序列化和IO
http://pandas.pydata.org/pandas-docs/stable/io.html
2.7 pandas cheat sheet
https://www.datacamp.com/community/blog/python-pandas-cheat-sheet
网友评论