一  : 安装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的更多相关文章

  1. 《机器学习实战-KNN》—如何在cmd命令提示符下运行numpy和matplotlib

    问题背景:好吧,文章标题是瞎取得.平常用cmd运行python代码问题不大,我在学习<机器学习实战>这本书时,发现cmd无法运行import numpy as np以及import mat ...

  2. 机器学习实战笔记(Python实现)-08-线性回归

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  3. 机器学习实战笔记(Python实现)-04-Logistic回归

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  4. 机器学习实战笔记(Python实现)-03-朴素贝叶斯

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  5. 机器学习实战笔记(Python实现)-01-K近邻算法(KNN)

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  6. 《机器学习实战》学习笔记——第13章 PCA

    1. 降维技术 1.1 降维的必要性 1. 多重共线性--预测变量之间相互关联.多重共线性会导致解空间的不稳定,从而可能导致结果的不连贯.2. 高维空间本身具有稀疏性.一维正态分布有68%的值落于正负 ...

  7. 机器学习实战 - 读书笔记(14) - 利用SVD简化数据

    前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第14章 - 利用SVD简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. 基 ...

  8. 机器学习实战 - 读书笔记(13) - 利用PCA来简化数据

    前言 最近在看Peter Harrington写的"机器学习实战",这是我的学习心得,这次是第13章 - 利用PCA来简化数据. 这里介绍,机器学习中的降维技术,可简化样品数据. ...

  9. 机器学习实战笔记5(logistic回归)

    1:简单概念描写叙述 如果如今有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合參数,使用的是最优化算法. 基于sigmoid ...

  10. K近邻 Python实现 机器学习实战(Machine Learning in Action)

    算法原理 K近邻是机器学习中常见的分类方法之间,也是相对最简单的一种分类方法,属于监督学习范畴.其实K近邻并没有显式的学习过程,它的学习过程就是测试过程.K近邻思想很简单:先给你一个训练数据集D,包括 ...

随机推荐

  1. Java 代码学习之数组的初始化

    我们都很熟悉Java中的数组,它具有查询快,增删慢的特点.但是通常我们自认为很了解它的用法,却容易忽略一些小细节.今天通过一段代码来简单了解数组初始化中的一些我们容易忽略的地方. package da ...

  2. ubuntu更换开机动画

    ubuntu更换启动动画 作为一个个用linux作为桌面环境,并且完全替代了windows的来说,怎么折腾好看,是一个重要的问题,而Ubuntu的开机动画,那紫色的画面,ubuntu那几个大字,实在丑 ...

  3. windows环境Caffe安装配置步骤(无GPU)及mnist训练

    在硕士第二年,义无反顾地投身到了深度学习的浪潮中.从之前的惯性导航转到这个方向,一切从头开始,在此,仅以此文记录自己的打怪之路. 最初的想法是动手熟悉Caffe,考虑到直接上手Ubuntu会有些难度, ...

  4. 分布式文件系统及FastDFS

    1.前言 今天来谈谈分布式文件系统,侧重点是文件系统,分布式稍微带一下.然后聊下我用的FastDFS的例子. 2.从小需求开始 我的博客的编辑器用的是markdown,它内嵌了一个文件上传功能,不过后 ...

  5. Django的url使用方法

    利用Django开发站点.能够设计出很优美的url规则,假设url的匹配规则(包括正則表達式)组织得比較好,view的结构就会比較清晰.比較easy维护. 最简单的形式 from django.con ...

  6. 第03章-VTK系统概述(1)

    [译者:这个系列教程是以Kitware公司出版的<VTK User's Guide -11th edition>一书作的中文翻译(出版时间2010年,ISBN: 978-1-930934- ...

  7. hdu 4883 区间选点

    昨天比赛的时候没有做出来,本来是想用贪心的,可是贪了好久都没有招, 今天在网上搜了解题报告~好像说这是一类区间选点问题: 有一个好的做法: (1)首先把题目中的时间全转化为分钟,那么区间就在0-144 ...

  8. JAVA入门[17]-ControllerAdvice处理exception

    1.关于@ControllerAdvice @ControllerAdvice注解本身已经使用了@Component,因此@ControllerAdvice注解所标注的类将会自动被组件扫描获取到,就像 ...

  9. ms sql一些技巧

    1.SQL:复制数据库某一个表到另一个数据库中 SELECT * INTO 新表 FROM 旧表 (将旧表的结构和数据都复制到新表,不用事先创建新表) SELECT * INTO 新表 FROM 旧表 ...

  10. jstl常用语句

    1.select框中if选中,下面的语句实现从后台给过来一个category实体,如果category的categoryType为指定的值,则选中. <select class="fo ...