
因为对机器学习算法进行实战的话,python语言是必须的,所以前几天进行了安装和配置。说实话,相比较其他的编程语言的IDE来讲,python本身问题不大,但是因为要有很多的矩阵的计算,所以要安装numpy包!但是这个过程在我的电脑上出现了比较大的问题,所以,将这一过程记录下来,万一以后电脑出现了问题重新安装的话还能做参考!!
声明电脑配置: win7 64位
python安装版本:Python 2.7 (也可以是python3.x 本人不习惯用最新的版本,所以选择了2.7)
1.下载 对应版本numpy 的.whl文件 (注意:我的电脑确实是64位的,而且python也安装的64位版本的,但是在之后的命令行安装的时候压根安装不了64位的,到后面再说)
http://www.lfd.uci.edu/~gohlke/pythonlibs/
2.将下载的安装包拷贝到python安装目录下的scripts目录下,我的是C:\Python27\Scripts ,然后我们打开命令行窗口,进入python的安装目录之后
输入 pip install "numpy-1.11.2+mkl-cp35-cp35m-win-amd64.whl" ,但是此时我的电脑是提示了问题的,之后通过查资料发现应该得先安装pip,所以还是上面的那个路径直接找
到pip的wheel文件下载。
将下载的压缩包解压后拷贝到刚才的scripts目录下。然后在命令行输入 python setup.py install 对pip进行安装。安装之后在命令行输入pip,此时还会提示pip不是内部命令,所以可以将刚才的scripts的路径加入到环境变量中去
3.在安装完pip之后,我进行numpy的安装的时候还是有问题,然后又在上面的路径找到了wheel文件的下载
同样是将wheel文件拷贝到scripts目录下,在命令行的该目录下输入 pip install wheel
如图显示wheel文件也已经安装好了。
4.最后进行我们终极目标numpy的安装 ,此时在命令行输入pip install "numpy-1.11.3+mkl-cp27-cp27m-win_amd64.whl" 注意:这个是我的numpy名字,根据自己的文件名字来写。注意:此时我的计算机位数是匹配的,按理来讲肯定能安装上,但是就是提示我不符
为此我换了好几个序号的64位版本,但是都是这一个结果。鼓捣了好久,我抱着死马当活马医的态度下了个32位的,结果立马就安上了!!!我还能说什么!手动哭~~~
numpy是我学习python遇到的第一个第三方工具包,它可以让我们快速上手数据分析。numpy提供了向量和矩阵计算和处理的大部分接口。目前很多python的基础工具包都是基于numpy开发而来,比如 scikit-learn, SciPy, pandas, 还有 tensorflow。 numpy可以处理表格、图像、文本等数据,极大地方便我们处理和分析数据。本文主要内容来自于Jay Alammar的一篇文章以及自己学习记录。原文地址: https://jalammar.github.io/visual-numpy/
使用过程中,如果希望 Numpy 能创建并初始化数组的值, Numpy 提供了 ones()、zeros() 和 random.random() 等方法。只需传递希望生成的元素数量(大小)即可:
还可以进行如下 *** 作:
一般,需要数组和单个数字之间也可以进行运算 *** 作(即向量和标量之间的运算)。比如说 data * 1.6 ,numpy利用一个叫做广播机制(broadcasting)的概念实现了这一运算。:
我们可以通过索引对numpy数据获取任意位置数据或者对数据切片
我们可以通过numpy自带的函数对数据进行一些想要的聚合计算,比如min、max 和 sum ,还可以使用 mean 得到平均值,使用 prod 得到所有元素的乘积,使用 std 得到标准差等等。
上述 *** 作不仅可以应用于单维度数据,还可以用于多维度数据{(矩阵)。
同样可以使用ones()、zeros() 和 random.random()创建矩阵,只要写入一个描述矩阵维数的元组即可:
numpy还可以处理更高维度的数据:
创建更高维度数据只需要在创建时,在参数中增加一个维度值即可:
根据数组中数值是否满足条件,输出为True或False.
希望得到满足条件的索引,用np.where函数实现.
根据索引得到对应位置的值.
np.where也可以接受另两个可选择的参数a和b。当条件满足时,输出a,反之输出b.
获取数组最大值和最小值的索引可以使用np.argmax和np.argmin.
1、numpy.tofile()和numpy.fromfile()
保存为二进制格式,但是不保存数组形状和数据类型, 即都压缩为一维的数组,需要自己记录数据的形状,读取的时候再reshape.
2、numpy.save() 和 numpy.load()
保存为二进制格式,保存数组形状和数据类型, 不需要进行reshape
实例:
3、numpy.savetxt()和numpy.loadtxt()
np.savetxt(fname,array,fmt=’%.18e’,delimiter=None)
Parameter解释:
array:待存入文件的数组。
fmt:写入文件的格式
实例:
如果你已经装有 Anaconda,那么你可以使用以下命令通过终端或命令提示符安装 NumPy:
conda install numpy
如果你没有 Anaconda,那么你可以使用以下命令从终端上安装 NumPy:
pip install numpy
安装好 NumPy 后,你就可以启动 Jupyter notebook 开始学习了。接下来从 NumPy 数组开始
就好比一个矩阵
numpy.empty 方法用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组:
参数说明:
参数 描述
shape 数组形状
dtype数据类型,可选
order有"C"和"F"两个选项,分别代表,行优先和列优先,在计算机内存中的存储元素的顺序。
举例
输出结果
创建指定大小的数组,数组元素以 0 来填充:
举例
结果输出
创建指定形状的数组,数组元素以 1 来填充:
举例
同样是类型,但是注意这个和上边的区别,一个是数组的形式,一个是矩阵的形式。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)