numpy

创建矩阵:

引入numpy库并生成矩阵

import numpy as np

a = np.array([[1,2,3],[4,5,6]])

常用方法:

矩阵元素个数 a.size

矩阵形状 a.shape

矩阵维度 a.ndim

矩阵元素类型 a.dtpye

矩阵的加减乘除 。np.dot(x,y)

pandas

Pandas 是基于 NumPy 的一个开源 Python 库,它被广泛用于快速分析数据,以及数据清洗和准

备等工作。它的名字来源是由‚ Panel data‛(面板数据,一个计量经济学名词)两个单词拼

成的。简单地说,你可以把 Pandas 看作是 Python 版的 Excel。

DataFrame对象的构建:

DataFrame是一种表格型数据结构,它含有一组有序的列,每列可以是不同的值。

DataFrame既有行索引,也有列索引,可以根据dict进行创建,以及读取csv或者txt文件来创建

引入pandas包:

import pandas as pd

pandas相关简单设置:

pd.set_option('display.max_columns', None)#显示所有列

pd.set_option('display.max_rows', None)#显示所有行

pd.set_option('expand_frame_repr',False)#在一行显示

pd.set_option('display.unicode.ambiguous_as_wide', True)#中文对齐

pd.set_option('display.unicode.east_asian_width', True)#中文对齐

打开并转换为DataFrame格式:

a=pd.read_csv('d:/a11.csv',sep=',',encoding='utf-8')

df1= pd.DataFrame(a)

其他的一些方法:

#print(df1.columns)#列名字,标签

#print(df.dtypes)#每列的数据类型

#print(df.shape)#df的形状

#print(df.ndim)#df维度

#print(df.describe())#每列的描述,通常用来判断是否有缺失

DataFrame的数据提取方法:

主要用到的三个函数:loc,iloc,loc函数按标签值进行提取,iloc按位置进行提取。

1、按索引提取单行的数值

df_inner.loc[3]

2、按索引提取区域行数值

df_inner.iloc[0:5]

3、使用iloc按位置区域提取数据

df_inner.iloc[:3,:2] #冒号前后的数字不再是索引的标签名称,而是数据所在的位置,从0开始,前三行,前两列。

4、适应iloc按位置单独提起数据

df_inner.iloc[[0,2,5],[4,5]] #提取第0、2、5行,4、5列

绘图库

Matplotlib

Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成

出具有出版品质的图形。

#画线

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签

plt.plot([1,2,34])

plt.ylabel("温度")

plt.show()

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lrYWxsYW4=,size_16,color_FFFFFF,t_70

#画线步骤

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']=['SimHei']

x_values=[1,2,3,4,5]

y_values=[1,4,9,16,25]

plt.plot(x_values,y_values,linewidth=5)

plt.title("每月入学人数",fontsize=20)

plt.xlabel("月份",fontsize=10)

plt.ylabel("人数",fontsize=10)

plt.tick_params(axis='both',labelsize=20)

plt.show()

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lrYWxsYW4=,size_16,color_FFFFFF,t_70

#画散点

import matplotlib.pyplot as plt

import numpy as np

plt.rcParams['font.sans-serif']=['SimHei']

x_values=np.random.rand(10)

y_values=np.random.rand(10)

plt.scatter(x_values,y_values)

plt.show()

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lrYWxsYW4=,size_16,color_FFFFFF,t_70

#画柱状图

import matplotlib.pyplot as plt

import numpy as np

plt.rcParams['font.sans-serif']=['SimHei']

x_values=np.arange(10)

y_values=np.random.randint(0,30,10)

plt.bar(x_values,y_values)

plt.show()

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lrYWxsYW4=,size_16,color_FFFFFF,t_70

#画饼图

import matplotlib.pyplot as plt

import numpy as np

plt.rcParams['font.sans-serif']=['SimHei']

x_values=np.random.randint(1,10,3)

print(x_values)

plt.pie(x_values,None,['男','女','未知'])

plt.show()

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lrYWxsYW4=,size_16,color_FFFFFF,t_70

Matplotlib常用绘制图形:

折线图matplotlib.pyplot.plot

柱状图matplotlib.pyplot.bar

散点图matplotlib.pyplot.scatter

饼图matplotlib.pyplot.pie

##################################################################

三个库的综合比较

Numpy:基础的数学计算模块,以矩阵为主。

来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多,本身是由C语言开发

。这个是很基础的扩展,其余的扩展都是以此为基础。数据结构为ndarray。

Pandas:提供一套名为DataFrame的数据结构,适合统计分析中的表结构,以及做数据分析

基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,

提供了高效地操作大型数据集所需的工具。最具有统计意味的工具包,某些方面优于R软件。数据结构有一维的

Series,二维的DataFrame(类似于Excel或者SQL中的表,Pandas和SQL有很多相似的地方)。

包括:

1.汇总和计算统计,处理缺失值

2.清理、转换、合并、重塑

3.日期和时间数据类型及工具

Matplotlib::绘图模块

Python中最著名的绘图模块

包括:

1.散点图,折线图,条形图,直方图,饼状图等的绘制。

2.坐标轴的调整,添加文字注释,区域填充,及特殊图形patches的使用

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐