day98_12_2 数据分析工具包。
1.numpy
在python中,数据分析可以使用numpy。
首先可以安装ipython解释器,在终端,代码变得可视化,界面有高亮显示:
pip Install ipython
除了可以在终端编程之外,还可以安装anaconda软件,该软件包含了数据分析的基础包,包括jupyter等和其他可是换数据分析包,可以快速的管理数据。
jupyter notebook看上去就像在终端编写代码一样,但是可以保存数据结果,有利于数据分析。
安装anaconda软件在官方点击下载,下载时记得将默认python3.7编辑器取消勾选。
jupyter的快捷键使用:
1. 运行当前代码并选中下一个单元格 shift+enter
2. 运行当前的单元格 crtl + enter
当编辑器出现绿色时,为编辑模式,当出现蓝色时,为 命令行模式。
3. 在单元格的上方添加一个单元格 , 按esc进入命令行模式,接下来按 a (above) 添加
4. 在单元格的上方添加一个单元格 , 按esc进入命令行模式,接下来按 b (below) 添加
5. 删除一个单元格, 按esc进入命令行模式, 接下来,按 dd(delete) 删除
6. 代码和markdown的切换, 按esc进入命令行模式, 接下来,按 m 切换
二。numpy的使用
首先使用pip进行安装:
pip install numpy
再对其进行导入,默认起别名为np
import numpy as np
numpy提供了比python还方便的一些处理数据方面的方法:
1.array
数组的创建array([1,2,3])
创建一个np格式的数组,这些数组可以直接相乘,得到一个数组:
import numpy as np
l1 =np.array([1,2,3])
l2 = np.array([4,5,6])
l1*2
array([2, 4, 6])
T: 数组的转置(对高维数组)
dtype 数组元素的数据类型
size 数组元素的个数
ndim 数组的维数
shape 数组的维度大小(以元组的形式)
数据类型:
| 类型 | 描述 | |
|---|---|---|
| 布尔型 | bool_ | |
| 整型 | int_ int8 int16 int32 int 64 | |
| 无符号整型 | uint8 uint16 uint32 uint64 | |
| 浮点型 | float_ float16 float32 float64 | |
| 复数型 | complex_ complex64 complex128 |
无符号类型只能用来存储正数
astype()方法可以修改数组的数据类型
array的搭建:
| 方法 | 描述 | |
|---|---|---|
| array() | 将列表转换为数组,可选择显式指定dtype | |
| arange() | range的numpy版,支持浮点数 | |
| linspace() | 类似arange(),第三个参数为数组长度 | |
| zeros() | 根据指定形状和dtype创建全0数组 | |
| ones() | 根据指定形状和dtype创建全1数组 | |
| empty() | 根据指定形状和dtype创建空数组(随机值) | |
| eye() | 根据指定边长和dtype创建单位矩阵 |
1、arange():
np.arange(1.2,10,0.4)
执行结果:
array([1.2, 1.6, 2. , 2.4, 2.8, 3.2, 3.6, 4. , 4.4, 4.8, 5.2, 5.6, 6. ,
6.4, 6.8, 7.2, 7.6, 8. , 8.4, 8.8, 9.2, 9.6])
# 在进行数据分析的时候通常我们遇到小数的机会远远大于遇到整数的机会,这个方法与Python内置的range的使用方法一样
-----------------------------------------------------------------
2、linspace()
np.linspace(1,10,20)
执行结果:
array([ 1. , 1.47368421, 1.94736842, 2.42105263, 2.89473684,
3.36842105, 3.84210526, 4.31578947, 4.78947368, 5.26315789,
5.73684211, 6.21052632, 6.68421053, 7.15789474, 7.63157895,
8.10526316, 8.57894737, 9.05263158, 9.52631579, 10. ])
# 这个方法与arange有一些区别,arange是顾头不顾尾,而这个方法是顾头又顾尾,在1到10之间生成的二十个数每个数字之间的距离相等的,前后两个数做减法肯定相等
----------------------------------------------------------------
3、zeros()
np.zeros((3,4))
执行结果:
array([[0., 0., 0., 0.],
[0., 0., 0., 0.],
[0., 0., 0., 0.]])
# 会用0生成三行四列的一个多维数组
---------------------------------------------------------------------
4、ones()
np.ones((3,4))
执行结果:
array([[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]])
# 会用1生成三行四列的一个多维数组
------------------------------------------------------------------------
5、empty()
np.empty(10)
执行结果:
array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.])
# 这个方法只申请内存,不给它赋值
-----------------------------------------------------------------------
6、eye()
np.eye(5)
执行结果:
array([[1., 0., 0., 0., 0.],
[0., 1., 0., 0., 0.],
[0., 0., 1., 0., 0.],
[0., 0., 0., 1., 0.],
[0., 0., 0., 0., 1.]])
测试
linspace中有一个参数位endpoint=False,标记当前数组中最后一个数是否参数与切分。
np.empty([2,2])
建立一个2*2的二维数组。
day98_12_2 数据分析工具包。的更多相关文章
- Python之数据分析工具包介绍以及安装【入门必学】
前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 首先我们来看 Mac版 按照需求大家依次安装,如果你还没学到数据分析,建议你 ...
- python数据分析工具包(3)——matplotlib(一)
前两篇文章简单介绍了科学计算Numpy的一些常用方法,还有一些其他内容,会在后面的实例中学习.下面介绍另一个模块--Matplotlib. Matplotlib是一个Python 2D绘图库,试图让复 ...
- python数据分析工具包(2)——Numpy(二)
上一篇文章简单地介绍了numpy的一些基本数据类型,以及生成数组和矩阵的操作.下面我们来看一下矩阵的基本运算.在线性代数中,常见的矩阵运算包括,计算行列式.求逆矩阵.矩阵的秩等.下面我们来一一实现. ...
- python数据分析工具包(1)——Numpy(一)
在本科阶段,我们常用的科学计算工具是MATLAB.下面介绍python的一个非常好用而且功能强大的科学计算库--Numpy. a powerful N-dimensional array object ...
- 媲美pandas的数据分析工具包Datatable
1 前言 data.table 是 R 中一个非常通用和高性能的包,使用简单.方便而且速度快,在 R 语言社区非常受欢迎,每个月的下载量超过 40 万,有近 650 个 CRAN 和 Biocondu ...
- 【机器学习Machine Learning】资料大全
昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】
转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...
- Pandas基础学习与Spark Python初探
摘要:pandas是一个强大的Python数据分析工具包,pandas的两个主要数据结构Series(一维)和DataFrame(二维)处理了金融,统计,社会中的绝大多数典型用例科学,以及许多工程领域 ...
- 论文总结(Frequent Itemsets Mining With Differential Privacy Over Large-Scale Data)
一.论文目标:将差分隐私和频繁项集挖掘结合,主要针对大规模数据. 二.论文的整体思路: 1)预处理阶段: 对于大的数据集,进行采样得到采样数据集并计算频繁项集,估计样本数据集最大长度限制,然后再缩小源 ...
随机推荐
- 关于C 语言的字符串常量拼接
问题记录: C语言中,字符串是否可以通过连续的常量创建直接编辑拼接在一起? 比如下述语句赋值: const char *path = “this is string one” “this is s ...
- 记录一次VMware与xshell远程链接的总结
VMware 与xshell链接 说在前面 用了一年多的virtualbox,虚拟机环境的配置算是理清了,可最近参加红帽培训,大家用的都是VMware,想想我也试试吧,刚好再熟悉一下,于是就捣鼓了很久 ...
- Python的re模块,正则表达式书写方法
Python的re模块,正则表达式 #导入re模块 import re 1.match方法的使用: result = re.match(正则表达式,待匹配的字符串) 正则表达式写法: 第一部分: 字 ...
- electron中JS报错:require is not defined的问题解决方法
Electron已经发布了6.0正式版,升级后发现原来能运行的代码报错提示require is not defined 解决办法: 修改创建BrowserWindow部分的相关代码,设置属性webPr ...
- 【VUE】使用问题记录
[VUE]使用问题记录 ===================================================================== 1.Vue.nextTick 修改数 ...
- verilog设计加法器
概述 本文利用了硬件行为描述.数据流描述.结构描述三种方法分别写了几个加法器 一位半加法器 即两个一位的二进制数相加,得到其正常相加的结果的最后一位. 仿真波形图 硬件行为描述 设计文件 123456 ...
- Sockit 硬件接口编程——点亮一个LED
1.话不多说上代码 #include <stdio.h> #include <stdlib.h> #include <string.h> #include < ...
- python基础知识第六篇(知识点总结)
####################### 整理 ################# # 一.数字# int(..) # 二.字符串# replace(替换)/find/join/strip(移除 ...
- Kali_Linux 中文乱码 修改更新源及更新问题
Kali_Linux 中文乱码 修改更新源及更新问题 中文乱码问题 kali默认没有中文字符 当以中文安装或者切换编码换为中文后会出现乱码的情况 解决方法: 确定locales已经安装好, 使用 ap ...
- 替换空格(剑指offer_5)
题目描述: 将一个字符串中的空格替换成"%20". Input: "A B" Output: "A%20B" 解题思路: 在字符串尾部填充任 ...