IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Jupyter、Numpy、Pandas(1) -> 正文阅读

[开发工具]Jupyter、Numpy、Pandas(1)

jupyter的下载和使用

下载numpy、pandas、matplotlib三个必备的包
交互式环境ipyhon
pip install ipython
建议使用jupyter(基于ipython)
pip install jupyter

jupyter会自动保存

然后在要打开jupyter的路径下启动命令窗口
然后输入jupyter notebook
就可以以这个路径为根目录打开jupyter
然后自动会在默认浏览器打开jupyter,或者复制命令行中的链接,在浏览器中打开

ipynb文件是mardown语法的

选中一个单元,按A会在上方创建一个单元,按住B会下下方创建
对于每一个小的单元,按两次D键删除
按Z键撤销,恢复
crtl+回车 运行单元里面的代码
M,变成markdown模式
按Tab自动补全
shift+Tab提示函数参数(一次Tab是简单的提示,两次Tab详细提示)

代码在执行的时候,前面会有*号,窗口会有漏斗标志
在这里插入图片描述

一个?打印docstring,两个??打印源码
?也可以使用在自己写的函数上
在这里插入图片描述

%run xxx.py(相对路径或者绝对路径)
执行外部的脚本或者python文件
如果执行了外部的文件,那么该文件内的函数就能直接在当前会话中使用
在这里插入图片描述

运行记时:%time statement,只能记录运行一次的时间
运行多次的平均时间 %timeit statement
也可以通过参数指定跑多少次
在这里插入图片描述
在这里插入图片描述

如果想测多条语句的运行时间,%%timeit
在这里插入图片描述

如果运行结果太长,会自动将结果折叠起来,需要滚动查看;点击左边会展开;双击会隐藏
在这里插入图片描述

%who 当前窗口中所有的变量和函数
%whos who的详细信息
%who_ls 返回一个字符串列表,里面是当前会话中的所有变量和函数名称,可以直接用列表中的变量使用
在这里插入图片描述

如果要执行系统命令,用!+命令 的形式执行
相当于将命令行搬到了jupyter中

lsmagic 显示出支持的所有魔法命令

在这里插入图片描述
在这里插入图片描述

%matplotlib inline 可以在Ipython编译器里直接使用,功能是可以内嵌绘图,并且可以省略掉plt.show()这一步。

Numpy

numpy提供的不是真正的矩阵,可以当作优化过的多维列表
scipy提供熟悉意义上的矩阵

创建

  1. 由列表创建
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

retstep加上以后变成元组
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

产生正态分布的数据,loc均值,scale标准差
在这里插入图片描述

标准正态分布,参数是各个维度
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

可以用这个直接写,不需要加size=(),和np.random.random()一样
在这里插入图片描述

属性

在这里插入图片描述

在这里插入图片描述

基本操作

一维的和列表是一样的
多维的索引操作
在这里插入图片描述

切片

在这里插入图片描述

取多个任意位置的数,需要用到np.ix_()方法
在这里插入图片描述

变形

reshape,参数是一个元组,总体元素个数不能变
数组本身没有发生变化,需要用一个变量去接收改变后的值
在这里插入图片描述
在这里插入图片描述

级联concatenate

增加行数叫垂直级联,即上下拼接vertical
增加列数叫水平级联,即左右拼接,horizontal

axis 轴
axes 轴的复数形式
axis=0表示对行操作,即垂直级联
axis=1表示对列操作,即水平级联
在这里插入图片描述
在这里插入图片描述

hstack(元组),水平级联
vstack(),垂直级联
在这里插入图片描述

切分 split

np.split
np.vsplit
np.hsplit

axis=0 表示对行进行切割
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

拷贝副本copy() 深拷贝

如果要对数据进行修改,可以先copy(),直接赋值会修改原数据

聚合操作

np.sum(),np.max()/min()
默认axis=None,表示聚合成0维,也就是一个值
axis=0 表示对行操作,行没了,剩下列,也就是把每一列加起来

np.sum(array, axis=None) 一样
在这里插入图片描述

argmin,返回最小值的索引
在这里插入图片描述

any只要有true返回true,all只要有false,返回false
在这里插入图片描述

np.nan 表示numpy,pandas中的空数据 Not a number

np.nansum()非空数据相加

在这里插入图片描述

矩阵操作

基本矩阵操作

n+1每个元素加1
n1 +n2 对应元素相加
在这里插入图片描述

a *b 普通的乘法,对应元素相乘
np.dot(a, b) 矩阵的积

广播机制

两条规则:
为缺失的维度补1
假定缺失元素用已有值填充

当参与运算的ndarray的shape不一致时,会触发广播机制,使维度变得一致

如下面这个例子,因为a只有一个维度,首先补一个维度,然后用已有值填充,变成两行0 1 2
在这里插入图片描述

排序

np.sort() 不会修改原数组
ndarray.sort() 修改原数组

部分排序

np.partition()
相当于找到最极端的几个值
最大的五个,-5,只是找出来,没有排序
在这里插入图片描述

Pandas

Series

如果由ndarray创建Series,传递的是该对象的引用,修改Series中的内容,ndarray中的内容会改变
而如果由列表创建的话,传递的是列表的拷贝,修改Series不会影响原列表中的内容
在这里插入图片描述

在这里插入图片描述

由字典创建
在这里插入图片描述

索引和切片

显示索引,就是用存在的索引
在这里插入图片描述
在这里插入图片描述

隐式索引,就是系统分配的,0123…
在这里插入图片描述

如果要返回索引和数值一起的情况
再套一层中括号
在这里插入图片描述

基本概念

属性shape, size, name
Series可以指定名字

方法 head(), tail()
pd.isnull() 一一判断series中所有元素是否为nan
pd.notnull()
在这里插入图片描述

需要注意的是name是类属性
在这里插入图片描述

运算

适用于numpy数组的运算也适用于series

Series之间的计算:
在运算中自动对齐不同索引的数据
如果索引不对应,补nan
在这里插入图片描述

可以使用pandas封装的add()函数,保留原始的index的值
在这里插入图片描述

在这里插入图片描述

DataFrame

行索引:index
列索引:columns
值:values

分块创建,也可以采用字典创建
在这里插入图片描述

属性

values, columns, index, shape
在这里插入图片描述

索引

对行操作,要用loc,列操作,直接括号
对列进行索引:

注意新增一列的时候,不能使用属性的写法
在这里插入图片描述

对行索引:
在这里插入图片描述

对元素的索引:
先列后行
在这里插入图片描述

先行后列
下面这个推荐写法,上面的链式索引不推荐
在这里插入图片描述

切片

什么也不返回,是因为直接使用这个,是在进行行切片
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

对列切片
在这里插入图片描述

索引总结

  1. 行索引用loc,列索引用[]
  2. 对元素的索引,先索引行,再列,df.loc[index, col]
  3. 如果还想返回dataframe,那么使用两层中括号
  4. 注意:直接使用中括号的时候,如果是切片,是对行进行切片
  5. 注意:不要使用链式索引

要使返回结果仍为dataframe,需要加中括号
在这里插入图片描述

这样会报错,因为找这两行,而没有math这一行
在这里插入图片描述

运算

在这里插入图片描述

dataframe和dataframe运算,只有行列索引都相同才会运算
和series一样,如果要保留,需要用add方法,设置fill_value = 0

dataframe 和 series相加,索引一样可以相加
在这里插入图片描述

但是如果改成行索引的series
使用用算符进行操作,默认比较的df的列索引和series的行索引
在这里插入图片描述

使用axis改变运算方向
在这里插入图片描述

在这里插入图片描述

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-09-04 01:32:17  更:2022-09-04 01:33:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 13:24:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码