Numpy
一 : 安装ipython以及用到的包介绍
# 这里我们会用到ipython解释器,本文代码在ipython下运行
Pip3 install ipython
Pip3 install jupyter
Jupyter notebook
Pandas 是我们数据分析的核心包
pandas相当于是表数据
Series相当于表数据的一列
Dropna() : 过滤掉为nan的行
iloc 是下标 df[0,1] # 两个都是下标
Loc 是标签 df.loc[df.index[0], 'close'] # 两个都是标签
#例子中是知道一个索引,将索引变成标签
多维:
- Df.dropna(how='all') 删除单列全是nan的
- Df.dropna(axis=1) #x=1找行 , x=1找列
二: 关于numpy
import numpy as np
# astype
In [7]:
arr = np.array([1.2,2.3,3.4])
arr.astype('int')
arr
arr1 = arr.astype('int')
arr1
Out[7]:
array([1, 2, 3])
In [ ]:
# eye 矩阵
In [12]:
np.eye(6)
Out[12]:
array([[ 1., 0., 0., 0., 0., 0.],
[ 0., 1., 0., 0., 0., 0.],
[ 0., 0., 1., 0., 0., 0.],
[ 0., 0., 0., 1., 0., 0.],
[ 0., 0., 0., 0., 1., 0.],
[ 0., 0., 0., 0., 0., 1.]])
In [14]:
import random
l = [random.randint(1,10) for i in range(0,20)]
l
Out[14]:
[2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3, 1, 5, 2]
In [17]:
arr = np.array(l)
arr
Out[17]:
array([ 2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3,
1, 5, 2])
In [18]:
list(filter(lambda x:x>5,l))
Out[18]:
[6, 7, 10, 7, 7, 8]
In [19]:
arr.T
Out[19]:
array([ 2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3,
1, 5, 2])
In [20]:
arr.size
Out[20]:
20
In [21]:
arr.ndim
Out[21]:
1
In [30]:
arr=np.array([1.2,2.3,3.8,5,6])
arr
Out[30]:
array([ 1.2, 2.3, 3.8, 5. , 6. ])
In [31]:
arr.astype('int')
Out[31]:
array([1, 2, 3, 5, 6])
In [34]:
# 花式索引
arr = np.array(l)
arr
Out[34]:
array([ 2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3,
1, 5, 2])
In [36]:
# 花式索引
arr[[1,3,5,7,9]]
Out[36]:
array([6, 5, 5, 5, 7])
In [37]:
# 花式索引
arr[np.arange(0,arr.size,2)]
Out[37]:
array([ 2, 3, 1, 7, 10, 2, 4, 2, 3, 5])
In [45]:
'''
ceil : 向上取整 3.1-->4 -3.1 --> -3
floor : 向下取整 取小 3.1-->3 3.9-->3
rint(round) : 四舍五入 3.6--> 4 3.1-->3 找最近的数
trunc(int) : 向零取整(舍去小数点后)
modf : 将整数和小数分开
maximun 相同位置取最大
minimum 相反
'''
arr = np.arange(10)
arr.sum()
arr.mean() # 平均数
arr.cumsum() # 前缀和
Out[45]:
array([ 0, 1, 3, 6, 10, 15, 21, 28, 36, 45])
In [43]:
# var : 方差, 表示这组输的离散程度
arr.var() 数越小越集中
Out[43]:
8.25
In [44]:
# std : 标准差
arr.std()
Out[44]:
2.8722813232690143
# uniform : 对应randint 小数
# np.random.rand() 0到1 的随机小数
In [47]:
l = [1,2,3,4,5]
random.shuffle(l) # 洗牌
l
Out[47]:
[5, 3, 4, 1, 2]
np.random.randint(-10,10,5) # -10到10之间的随机整数 拿5个
In [*]:
np.random.randint(-10,10,(3,5)) # -10到10之间的随机整数 拿5个
Numpy的更多相关文章
- 《机器学习实战-KNN》—如何在cmd命令提示符下运行numpy和matplotlib
问题背景:好吧,文章标题是瞎取得.平常用cmd运行python代码问题不大,我在学习<机器学习实战>这本书时,发现cmd无法运行import numpy as np以及import mat ...
- 机器学习实战笔记(Python实现)-08-线性回归
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-04-Logistic回归
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-03-朴素贝叶斯
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 机器学习实战笔记(Python实现)-01-K近邻算法(KNN)
--------------------------------------------------------------------------------------- 本系列文章为<机器 ...
- 《机器学习实战》学习笔记——第13章 PCA
1. 降维技术 1.1 降维的必要性 1. 多重共线性--预测变量之间相互关联.多重共线性会导致解空间的不稳定,从而可能导致结果的不连贯.2. 高维空间本身具有稀疏性.一维正态分布有68%的值落于正负 ...
- 机器学习实战 - 读书笔记(14) - 利用SVD简化数据
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第14章 - 利用SVD简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. 基 ...
- 机器学习实战 - 读书笔记(13) - 利用PCA来简化数据
前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第13章 - 利用PCA来简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. ...
- 机器学习实战笔记5(logistic回归)
1:简单概念描写叙述 如果如今有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合參数,使用的是最优化算法. 基于sigmoid ...
- K近邻 Python实现 机器学习实战(Machine Learning in Action)
算法原理 K近邻是机器学习中常见的分类方法之间,也是相对最简单的一种分类方法,属于监督学习范畴.其实K近邻并没有显式的学习过程,它的学习过程就是测试过程.K近邻思想很简单:先给你一个训练数据集D,包括 ...
随机推荐
- 51Nod 1284 2 3 5 7的倍数 容斥原理
1284 2 3 5 7的倍数基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注给出一个数N,求1至N中,有多少个数不是2 3 5 7的倍数. 例如N = 1 ...
- CCF-201512-2-消除类游戏
问题描述 试题编号: 201512-2 试题名称: 消除类游戏 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游 ...
- 如何用九条命令在一分钟内检查Linux服务器性能?
一.uptime命令 这个命令可以快速查看机器的负载情况.在Linux系统中,这些数据表示等待CPU资源的进程和阻塞在不可中断IO进程(进程状态为D)的数量.这些数据可以让我们对系统资源使用有一个宏观 ...
- 关于C#中函数声明带参数的函数
在C#语言的函数中,有一项至关重要的我们称之为参数. 对于参数的含义:要完成一件事,需要知道的额外条件 其语法: static void 函数名(参数列表){ //注释类容} 而其参数列表的语法为: ...
- iScroll的简单使用
今天是2017-1-18,每天进步一点点 今天主要来总结一下我在项目中遇到的关于iScroll的使用问题. 第一个是iscroll的初始化问题. --在页面资源(包括图片)加载完毕后100ms之后初始 ...
- mysql本地訪问linuxserver,出现SQLSTATE[HY000] [1130] Host '127.0.0.1' is not allowed to connect to this
解决方式:网上看了说.更改mysql库的user表,加入一条host为%的数据就能够.可是还是不行. 后来,直接登录mysql.给訪问加权限就能够了. 运行 [root@iZ25p77kem7Z ~] ...
- iOS 力学动画生成器UIKit Dynamics 之碰撞效果解说
UIKit Dynamic是iOS7 新增的一组类和方法.可赋予UIView逼真的行为和特征,不须要写动画效果那些繁琐的代码,让开发者可以轻松地改善应用的用户体验.一共同拥有6个可用于定制UIDyna ...
- html5笔记——<section> 标签
定义和用法 <section> 标签定义文档中的节(section.区段).比如章节.页眉.页脚或文档中的其他部分. 注意: section 不是一个专用来做容器的标签,如果仅仅是用于设置 ...
- springboot+CXF开发webservice对外提供接口(转)
文章来源:http://www.leftso.com/blog/144.html 1.项目要对外提供接口,用webservcie的方式实现 2.添加的jar包 maven: <dependenc ...
- 配置SQL Server on Linux(2)
1. 前言 前一篇配置SQL Server on Linux(1),地址:http://www.cnblogs.com/fishparadise/p/8125203.html ,是关于更改数据库排序规 ...