数据分析(pandas)

1. 导入第三方模块

import pandas as pd
import numpy as np
import string

2. 创建Series对象

2.1 通过列表创建Series对象:
	默认索引从0开始,可用index指定索引
	pd.Series(data=array)
	pd.Series(data=array, index=['A', 'B', 'C'])
2.2 通过numpy的对象Ndarray创建Series:
	pd.Series(data=n)
	s.astype(np.int)
2.3 通过字典创建Series对象:
	pd.Series(dict)

3. Series基本操作

3.1 修改Series索引:
	s1.index = ['A', 'B', 'C']
3.2 Series纵向拼接:
	s1.append(s2)
3.3 删除指定索引对应的元素:
	s3.drop('C')
3.4 根据指定的索引查找元素:
	s3['B']
3.5 修改指定索引的元素值:
	s3['B'] = np.nan
3.6 切片操作(同列表):
	s3[:2]
	s3[::-1]
	s3[-2:]

4. Series计算

4.1 按照对应的索引进行计算(索引不同填充为nan):
	加法:s1 + s2
		 s1.add(s2)
	减法:s1 - s2
		 s1.sub(s2)
	乘法:s1 * s2
		 s1.mul(s2)
	除法:s1 / s2
		 s1.div(s2)
	求中位数:s1.median()
	求和:s1.sum()
	求最大值:s1.max()
	求最小值:s1.min()

5. where方法

where方法返回一个与原数据格式相同的数据,将不满足where要求的数据替换为NaN
s1.where(s1>3)
对象中不大于3的元素赋值为10:s1.where(s1 > 3, 10)
对象中大于3的元素赋值为10:s1.mask(s1 > 3, 10)

6. 创建DataFrame数据类型

6.1 通过列表创建:
	pd.DataFrame(data=li, index=['A', 'B'], columns=['views', 'loves', 'comments', 'tranfers'])
6.2 通过numpy对象创建:
	pd.DataFrame(data=narr, index=['A', 'B'], columns=['views', 'loves', 'comments', 'tranfers'])
6.3 通过字典的方式创建:
	pd.DataFrame(data=dict, index=['a1', "a2"])
6.4 日期操作:
	periods表示向后推演的天数
	pd.date_range(start='today', periods=6)
	end表示日期截止时间
	pd.date_range(start='1/1/2019', end='12/31/2019', freq='D')

7. DataFrame的基本操作

7.1 查看基础属性:
	d.shape		# 获取行数和列数
	d.dtypes		# 列数据类型
	d.ndim			# 获取数据的维度
	d.index		# 行索引
	d.columns		# 列索引
	d.values		# 对象的值,二维ndarray数组
7.2 数据整体状况的查询:
	d.head(1)		# 显示头部的几行, 默认5行
	d.tail(1)		# 显示头部的尾行, 默认5行
	# 相关信息的预览: 行数, 列数, 列类型, 内存占用
	print("info:", d.info())
	# 快速综合用计结果: 计数, 均值, 标准差, 最小值, 1/4位数, 中位数, 3/4位数, 最大值;
	d.describe()
7.3 转置操作:
	d.T
7.4 按列进行排序:
	按照指定列进行排序, 默认是升序, 如果需要降序显示,设置ascending=False
	d.sort_values(by="views", ascending=False)
7.5 切片及查询:
	d[:1]						# 可以实现切片,但是不能索引
	d['views']					# 通过标签查询,获取单列信息
	d.views
	d[['views', 'comments']]	# 通过标签查询多列信息
7.6 通过类似索引的方式查询:
	iloc(通过位置进行行数据的获取)
	d.iloc[0]
	loc(t通过标签索引行数据)
	d.iloc[-1:]
	d.loc['A']
7.7 更改pandas的值:
	d.loc['A'] = np.nan

8. 写入、读取数据

8.1 保存为csv格式:
	d.to_csv('csvFile.csv')
8.2 从csv文件中读取:
	pd.read_csv('csvFile.csv')
8.3 保存为excel格式:
	d.to_excel("/tmp/excelFile.xlsx", sheet_name="工作表1")
8.4 从excel文件中读取:
	pd.read_excel("/tmp/excelFile.xlsx", sheet_name="工作表1")

猜你喜欢

转载自blog.csdn.net/qq_43281189/article/details/88028071