机器学习 最重要的东西就是算法   这里面的水很深  所以呢我就简单的整理了一下
基础的操作
 
 
#导入numpy库 as别名 为了怕重名
import numpy as np
# 打印版本号
print(np.version.version)
#声明一个numpy数组 ,一维数组
nlist = np.array([1,2,3])
print(nlist)
#ndim方法用来查看数组维度
print(nlist.ndim)
# 声明一个二维数组
nlist_2 = np.array([[1,2,3],[4,5,6]])
print(nlist_2)
print(nlist_2.ndim)
#使用shape属性来打印多维数组的形状
print(nlist.shape)
print(nlist_2.shape)
#使用size方法来打印多维数组的元素个数
print(np.size(nlist))
print(np.size(nlist_2))
#打印numpy多维数组的数据类型
#打印普通list
print(type([1,2,3]))
print(type(nlist))
#使用dtype属性来打印多维数组内部元素的数据类型
print(type(123))
print(nlist.dtype)
#itemsize属性,来打印多维数组中的数据类型大小,字节
print(nlist.itemsize)
print(nlist_2.itemsize)
#data属性,用来打印数据的缓冲区 buffer
print(nlist.data)
#使用reshape方法来反向生成多维数组 第一个数字是几维数组的,第二个数字是2行,第三个数字是4列
nlist_3 = np.array(range(24)).reshape((3,2,4))
nlist_4 = np.array(range(32)).reshape((4,2,4))
print(nlist_3)
print(nlist_4)
#使用浮点作为元素类型
nlist_float = np.array([1.0,2.0,3.0])
print(nlist_float.dtype)
#使用字符串
nlist_string = np.array(['1','2','3'])
print(nlist_string.dtype)
#四维数组
nlist_4 = np.array(range(20)).reshape((5,2,2,1))
print(nlist_4)
print(nlist_4.ndim)
 
#声明一个size为20的四维数组
nlist_4 = np.array(range(20)).reshape((1,2,5,2))
print(nlist_4)
#声明一个3*3的数组
nlist_33 = np.array([[1,2,3],[4,5,6],[2,3,6]])
#属性
print(nlist_33)
print(nlist_33.shape)
print(nlist_33.ndim)
print(nlist_33.size)
#方法
print(np.size(nlist_33))
print(np.shape(nlist_33))
print(np.ndim(nlist_33))
#自动生成元素为1的多维数组,使用ones方法
nlist_ones = np.ones((4,4))
print(nlist_ones)
print(nlist_ones.dtype)
#使用zeros来生成元素为0的多维数组
nlist_zeros = np.zeros((4,4))
print(nlist_zeros)
print(nlist_zeros.dtype)
#使用empty方法来生成随机多维数组 使用第二个参数来指定数据类型
nlist_empty = np.empty([2,2],dtype=np.int)
print(nlist_empty)
print(nlist_empty.dtype)
#把普通list转换为数组
x = [1,2,3]
x= [(1,2,3),(4,5)]
print(np.ndim(x))
print(np.shape(x))
print(type(x))
nlist = np.asarray(x)
print(type(nlist))
print(nlist.ndim)
print(nlist.shape)
#frombuffer 通过字符串(buffer内存地址)切片来生成多维数组
my_str = b'Hello World'
nlist_str = np.frombuffer(my_str,dtype='S1')
print(nlist_str)
x = np.array([[1,2],[3,4]])
print(x)
#指定axis属性可以指定当前多维数组的维度 axis=0 列级相加 ,keepdims=True 保持维度
sum0 = np.sum(x,axis=0,keepdims=True)
print(sum0)
# axis = 1 行级相加
sum1 = np.sum(x,axis=1,keepdims=True)
print(sum1)
#多维数组赋值
x = np.array([1,2])
y = x.copy()
y[0] = 3
# x[0] = 3
print(x)
#维度级的运算
a = np.array([[1,2],[3,4],[5,6]])
b = np.array([[10,20],[30,40],[50,60]])
#使用vstack方法 列级添加
suma = np.vstack((a,b))
print(suma)
#hstack方法 行级添加
sumb = np.hstack((a,b))
print(sumb)
#多维数组的调用
nlist = np.array([[1,2],[3,4],[5,6]])
#取元素4
print(nlist[1][1])
#第二种写法
print(nlist[1,1])
nlist[2][1] = 7
print(nlist)
#删除方法 delete
#删除nlist第二行
nlist = np.delete(nlist,1,axis=0)
print(nlist)
nlist = np.delete(nlist,0,axis=1)
print(nlist)
 
这些只是一部分基础方法和算法   
想学的精的话只能自己慢慢摸索了 ,  胜利就在前方 ,加油!!

人工智能-机器学习之numpy方法的更多相关文章

  1. 控制算法的划分(自适应控制、预测控制、模糊控制等,PID等;蚁群算法、神经网络,还有机器学习、人工智能中的很多方法)

    一般来说,控制器的设计,分为控制框架的选取,跟参数的优化.自适应控制.预测控制.模糊控制等,跟PID一样,是控制算法(我习惯称为控制框架). 而粒子群.遗传算法(类似的还有蚁群算法.神经网络,还有机器 ...

  2. KDD 2011 最佳工业论文中机器学习的实践方法-翻译

    作者:黄永刚 Practical machine learning tricks from the KDD 2011 best industry paper 原文链接:http://blog.davi ...

  3. Python 机器学习库 NumPy 教程

    0 Numpy简单介绍 Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy.matplotlib一起使用.其实,list已经提供了类似于矩阵的表示形式,不过numpy ...

  4. 机器学习——打开集成方法的大门,手把手带你实现AdaBoost模型

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题的第25篇文章,我们一起来聊聊AdaBoost. 我们目前为止已经学过了好几个模型,光决策树的生成算法就有三种.但是我们每 ...

  5. python最全学习资料:python基础进阶+人工智能+机器学习+神经网络(包括黑马程序员2017年12月python视频(百度云链接))

    首先用数据说话,看看资料大小,达到675G 承诺:真实资料.不加密,获取资料请加QQ:122317653 包含内容:1.python基础+进阶+应用项目实战 2.神经网络算法+python应用 3.人 ...

  6. 安装Numpy方法

    Numpy安装(要先安装好python,见<windows下的python环境搭建(python2和python3不兼容,python2用的多)>) Numpy是Python的一个科学计算 ...

  7. python学习大全:python基础进阶+人工智能+机器学习+神经网络

    首先用数据说话,看看资料大小,达到675G承诺:真实资料.不加密.(鉴于太多朋友加我QQ,我无法及时回复,) 方便的朋友给我点赞.评论下,谢谢!(内容较大,多次保存) [hide]链接:[url]ht ...

  8. 机器学习基础 --- numpy的基本使用

    一.numpy的简介 numpy是Python的一种开源的数值计算扩展库.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该 ...

  9. numpy方法介绍

    三.numpy系列 1.np.maximum:(X, Y, out=None) X 与 Y 逐位比较取其大者: 最少接收两个参数 h=[[-2,2,10],[-5,-9,20]] hh=np.maxi ...

随机推荐

  1. 组合数C(n,m)的四种求解方法

    转自:文章 1.暴力求解 C(n,m)=n*(n-1)*...*(n-m+1)/m!,(n<=15): int CF(int n,int m) { ,i,j; ;i--) ans*=i; ;i- ...

  2. c# 得到list符合某条件的索引值,排序

    请教,在List集合中怎么得到元素的索引值,参考:http://www.myexception.cn/c-sharp/385022.html 这个可以用来读取窗口的多个textbox控件中内容: -- ...

  3. 总结一下《vue的使用》

    1.用vue创建项目的时候, 1.安装axios,对axios进行处理,创建axios.js文件,设置基础请求地址, 设置前置守卫和独享守卫,对请求数据进行设置,(特别实在进行token验证的时候特别 ...

  4. ZOJ 3216 Compositions (矩阵快速幂)

    题意:求把 n 拆成几个大于等于 k 的数的和的方案数. 析:根据题目很容易写出递推式,f[i] = f[i-1] + f[i-k],什么意思呢,f[i-1] 表示是进行加 1 操作,那么可以给 n- ...

  5. 07-css的继承性和层叠性

    css有两大特性:继承性和层叠性 继承性 面向对象语言都会存在继承的概念,在面向对象语言中,继承的特点:继承了父类的属性和方法.那么我们现在主要研究css,css就是在设置属性的.不会牵扯到方法的层面 ...

  6. mac终端的命令都失效的解决方法

    step1. 在terminal里面输入: export PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin&qu ...

  7. [转]Windows中使用命令行方式编译打包Android项目

    http://my.oschina.net/liux/blog/37875 网上很多用Ant来编译打包Android应用的文章,毕竟Ant是纯Java语言编写的,具有很好的跨平台性.今天想写个纯win ...

  8. EndNote安装

    下载地址:https://download.csdn.net/download/noticeable/10283841 EndNote X8.1是一款功能强大的文献管理软件,软件在x8版本中继承了国际 ...

  9. Mysql 分区(range,list,hash)转载

    MySQL支持RANGE,LIST,HASH和KEY四种分区.其中,每个分区又都有一种特殊的类型.对于RANGE分区,有RANGE COLUMNS分区.对于LIST分区,有LIST COLUMNS分区 ...

  10. StringBuffer 去掉最后一个字符

    StringBuffer stringBuffer=new StringBuffer (); stringBuffer.append("aaa,"); stringBuffer.d ...