一  : 安装ipython以及用到的包介绍

  1. # 这里我们会用到ipython解释器,本文代码在ipython下运行
  2.  
  3. Pip3 install ipython
  4.  
  5. Pip3 install jupyter
  6.  
  7. Jupyter notebook
  8.  
  9. Pandas 是我们数据分析的核心包
  10. pandas相当于是表数据
  11. Series相当于表数据的一列
  12.  
  13. Dropna() : 过滤掉为nan的行
  14.  
  15. iloc 是下标 df[0,1] # 两个都是下标
  16. Loc 是标签 df.loc[df.index[0], 'close'] # 两个都是标签
  17. #例子中是知道一个索引,将索引变成标签
  18.  
  19. 多维:
  20. - Df.dropna(how='all') 删除单列全是nan
  21. - Df.dropna(axis=1) #x=1找行 , x=1找列


二: 关于numpy

  1. import numpy as np
  2.  
  3. # astype
  4. In [7]:
  5. arr = np.array([1.2,2.3,3.4])
  6. arr.astype('int')
  7. arr
  8.  
  9. arr1 = arr.astype('int')
  10. arr1
  11. Out[7]:
  12. array([1, 2, 3])
  13. In [ ]:
  14.  
  15. # eye 矩阵
  16. In [12]:
  17. np.eye(6)
  18. Out[12]:
  19. array([[ 1., 0., 0., 0., 0., 0.],
  20. [ 0., 1., 0., 0., 0., 0.],
  21. [ 0., 0., 1., 0., 0., 0.],
  22. [ 0., 0., 0., 1., 0., 0.],
  23. [ 0., 0., 0., 0., 1., 0.],
  24. [ 0., 0., 0., 0., 0., 1.]])
  25.  
  26. In [14]:
  27.  
  28. import random
  29.  
  30. l = [random.randint(1,10) for i in range(0,20)]
  31. l
  32. Out[14]:
  33. [2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3, 1, 5, 2]
  34. In [17]:
  35. arr = np.array(l)
  36. arr
  37.  
  38. Out[17]:
  39. array([ 2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3,
  40. 1, 5, 2])
  41.  
  42. In [18]:
  43. list(filter(lambda x:x>5,l))
  44. Out[18]:
  45. [6, 7, 10, 7, 7, 8]
  46.  
  47. In [19]:
  48. arr.T
  49. Out[19]:
  50. array([ 2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3,
  51. 1, 5, 2])
  52.  
  53. In [20]:
  54. arr.size
  55. Out[20]:
  56. 20
  57.  
  58. In [21]:
  59. arr.ndim
  60. Out[21]:
  61. 1
  62.  
  63. In [30]:
  64. arr=np.array([1.2,2.3,3.8,5,6])
  65. arr
  66. Out[30]:
  67. array([ 1.2, 2.3, 3.8, 5. , 6. ])
  68.  
  69. In [31]:
  70. arr.astype('int')
  71. Out[31]:
  72. array([1, 2, 3, 5, 6])
  73.  
  74. In [34]:
  75. # 花式索引
  76. arr = np.array(l)
  77. arr
  78. Out[34]:
  79. array([ 2, 6, 3, 5, 1, 5, 7, 5, 10, 7, 2, 7, 4, 8, 2, 2, 3,
  80. 1, 5, 2])
  81.  
  82. In [36]:
  83. # 花式索引
  84. arr[[1,3,5,7,9]]
  85. Out[36]:
  86. array([6, 5, 5, 5, 7])
  87.  
  88. In [37]:
  89. # 花式索引
  90. arr[np.arange(0,arr.size,2)]
  91. Out[37]:
  92. array([ 2, 3, 1, 7, 10, 2, 4, 2, 3, 5])
  93.  
  94. In [45]:
  95. '''
  96. ceil : 向上取整 3.1-->4 -3.1 --> -3
  97. floor : 向下取整 取小 3.1-->3 3.9-->3
  98. rint(round) : 四舍五入 3.6--> 4 3.1-->3 找最近的数
  99. trunc(int) : 向零取整(舍去小数点后)
  100. modf : 将整数和小数分开
  101. maximun 相同位置取最大
  102. minimum 相反
  103. '''
  104.  
  105. arr = np.arange(10)
  106. arr.sum()
  107. arr.mean() # 平均数
  108. arr.cumsum() # 前缀和
  109.  
  110. Out[45]:
  111. array([ 0, 1, 3, 6, 10, 15, 21, 28, 36, 45])
  112.  
  113. In [43]:
  114. # var : 方差, 表示这组输的离散程度
  115. arr.var() 数越小越集中
  116. Out[43]:
  117. 8.25
  118.  
  119. In [44]:
  120. # std : 标准差
  121. arr.std()
  122. Out[44]:
  123. 2.8722813232690143
  124.  
  125. # uniform : 对应randint 小数
  126. # np.random.rand() 0到1 的随机小数
  127.  
  128. In [47]:
  129. l = [1,2,3,4,5]
  130. random.shuffle(l) # 洗牌
  131. l
  132. Out[47]:
  133. [5, 3, 4, 1, 2]
  134.  
  135. np.random.randint(-10,10,5) # -10到10之间的随机整数 拿5个
  136.  
  137. In [*]:
  138. 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. struts2摘抄

    Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互.struts使 ...

  2. Qt快速上手(学习笔记四)

    拖了大半年,今天终于有更新了...我自己都不好意思,最近太忙了! 今天讲一下:QML语法 一 概述 QML是一种专门用于构建用户界面的编程语言,它允许用户构建高性能,具有流畅特效的可视化应用程序,QM ...

  3. 赵雅智:service与訪问者之间进行通信,数据交换

    服务类 中间人:service服务中的bind对象 创建中间人并通过onBinder方法的return暴露出去 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQ ...

  4. [Python学习] 简单网络爬虫抓取博客文章及思想介绍

            前面一直强调Python运用到网络爬虫方面很有效,这篇文章也是结合学习的Python视频知识及我研究生数据挖掘方向的知识.从而简介下Python是怎样爬去网络数据的,文章知识很easy ...

  5. Android酷炫有用的开源框架

    一.代码库 1.from  代码家 整理比較好的源代码连接 一.兼容类库 ActionBarSherlock : Action Bar是Android 3.0后才開始支持的,ActionBarSher ...

  6. 剑指offer面试题14-调整数组顺序使奇数位于偶数前面

    题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得全部奇数位于数组的前半部分.全部偶数位于数组的后半部分. 前后分的这个.,让我想起来高速排序.好吧,就用这个做. 考虑到了排序的可扩 ...

  7. Qt---自定义界面之 Style Sheet

    这次讲Qt Style Sheet(QSS),QSS是一种与CSS类似的语言,实际上这两者几乎完全一样.既然谈到CSS我们就有必要说一下盒模型. 1. 盒模型(The Box Model) 在样式中, ...

  8. OS X Yosemite升级提示升级OS10.11或更高版本问题解决方法

    如图,楼主的pro久未升级,版本号已经很低.某天一时兴起,想体验最新版本的OS X.就很开心的进行软件更新: 依据iOS上的APP.系统升级经验,这是一个非常自然.毫无难度的过程,哪知道,今天一直卡在 ...

  9. (转)rabbitMQ基础知识及命令语句

    摘要: 整理rabbitmq的用户管理相关知识,备忘 安装最新版本的rabbitmq(3.3.1),并启用management plugin后,使用默认的账号guest登陆管理控制台,却提示登陆失败. ...

  10. effective java学习笔记之不可实例化的类

    在没有显式声明一个类的构造方法时,编译器会生成默认的无参构造方法,在设计工具类时,我们通常将方法设置成静态方法,以类名.方法名的形式调用,此时这个类就没有必要创建实例,我们知道抽象类不可以被实例化,但 ...