写在前面:本文所针对的python版本为python3.0以上!


np.tile()

tile()相当于复制当前行元素或者列元素

import numpy as npm1 = np.array([1, 2, 3, 4])
# 行复制两次,列复制一次到一个新数组中
print(np.tile(m1, (2, 1)))
print("===============")
# 行复制一次,列复制两次到一个新数组中
print(np.tile(m1, (1, 2)))
print("===============")
# 行复制两次,列复制两次到一个新数组中
print(np.tile(m1, (2, 2)))

输出:

D:\Python\python.exe E:/ML_Code/test_code.py
[[1 2 3 4][1 2 3 4]]
===============
[[1 2 3 4 1 2 3 4]]
===============
[[1 2 3 4 1 2 3 4][1 2 3 4 1 2 3 4]]

sum()

sum函数是对元素进行求和,对于二维数组以上则可以根据参数axis进行分别对行和列进行求和,axis=0代表按列求和,axis=1代表行求和。

import numpy as npm1 = np.array([1, 2, 3, 4])
# 元素逐个求和
print(sum(m1))m2 = np.array([[6, 2, 2, 4], [1, 2, 4, 7]])
# 按列相加
print(m2.sum(axis=0))
# 按行相加
print(m2.sum(axis=1))

输出:

D:\Python\python.exe E:/ML_Code/test_code.py
10
[ 7  4  6 11]
[14 14]Process finished with exit code 0

shape和reshape

import numpy as npa = np.array([[1, 2, 3], [4, 5, 6]])
print(a.shape)b = np.reshape(a, 6)
print(b)# -1是根据数组大小进行维度的自动推断
c = np.reshape(a, (3, -1))  # 为指定的值将被推断出为2
print(c)

输出:

D:\python-3.5.2\python.exe E:/ML_Code/test_code.py(2, 3)---[1 2 3 4 5 6]---[[1 2][3 4][5 6]]

numpy.random.rand

import numpy as np# 创建一个给定类型的数组,将其填充在一个均匀分布的随机样本[0, 1)中print(np.random.rand(3))print(np.random.rand(2, 2))

输出:

D:\python-3.5.2\python.exe E:/ML_Code/test_code.py[ 0.03568079  0.68235136  0.64664722]---[[ 0.43591417  0.66372315][ 0.86257381  0.63238434]]

zip()

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

import numpy as npa1 = np.array([1, 2, 3, 4])
a2 = np.array([11, 22, 33, 44])z = zip(a1, a2)print(list(z))

输出:

D:\Python\python.exe E:/ML_Code/test_code.py
[(1, 11), (2, 22), (3, 33), (4, 44)]Process finished with exit code 0

注意点:在python 3以后的版本中zip()是可迭代对象,使用时必须将其包含在一个list中,方便一次性显示出所有结果。否则会报如下错误:

<zip object at 0x01FB2E90>

矩阵相关

import numpy as np# 生成随机矩阵
myRand = np.random.rand(3, 4)
print(myRand)# 生成单位矩阵
myEye = np.eye(3)
print(myEye)from numpy import *# 矩阵所有元素求和
myMatrix = mat([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(sum(myMatrix))# 计算矩阵的秩
print(linalg.det(myMatrix))# 计算矩阵的逆
print(linalg.inv(myMatrix))

注意:

from numpy import *
import numpy as npvector1 = mat([[1, 2], [1, 1]])
vector2 = mat([[1, 2], [1, 1]])
vector3 = np.array([[1, 2], [1, 1]])
vector4 = np.array([[1, 2], [1, 1]])# Python自带的mat矩阵的运算规则是两者都按照矩阵乘法的规则来运算
print(vector1 * vector2)# Python自带的mat矩阵的运算规则是两者都按照矩阵乘法的规则来运算
print(dot(vector1, vector2))# numpy乘法运算中"*"是数组元素逐个计算
print(vector3 * vector4)# numpy乘法运算中dot是按照矩阵乘法的规则来运算
print(dot(vector3, vector4))

输出:

D:\python-3.5.2\python.exe D:/PyCharm/py_base/py_numpy.py
[[3 4][2 3]]---
[[3 4][2 3]]---
[[1 4][1 1]]---
[[3 4][2 3]]

向量相关

两个n维向量A(X11,X12,X13,...X1n)A(X_{11},X_{12},X_{13},...X_{1n})与B(X21,X22,X23,...X2n)B(X_{21},X_{22},X_{23},...X_{2n})之间的欧式距离为:

d12=∑k=1n(x1k−x2k)2−−−−−−−−−−−−√

d_{12}=\sqrt{\sum_{k=1}^{n}(x_{1k}-x_{2k})^{2}}

表示成向量运算的形式:

d12=(A−B)(A−B)T−−−−−−−−−−−−−−√

d_{12}=\sqrt{(A-B)(A-B)^{T}}

from numpy import *# 计算两个向量的欧氏距离vector1 = mat([1, 2])
vector2 = mat([3, 4])
print(sqrt((vector1 - vector2) * ((vector1 - vector2).T)))

概率相关

from numpy import *
import numpy as nparrayOne = np.array([[1, 2, 3, 4, 5], [7, 4, 3, 3, 3]])# 计算第一列的平均数
mv1 = mean(arrayOne[0])# 计算第二列的平均数
mv2 = mean(arrayOne[1])# 计算第一列的标准差
dv1 = std(arrayOne[0])# 计算第二列的标准差
dv2 = std(arrayOne[1])print(mv1)
print(mv2)
print(dv1)
print(dv2)

机器学习中数据处理与可视化的python、numpy等常用函数相关推荐

  1. R语言机器学习与大数据可视化暨Python文本挖掘与自然语言处理核心技术研修

    中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办[2017] 第45号 "R语言机器学习与大数据可视化"暨"Python文本挖掘与自然语言处理" ...

  2. “R语言机器学习与大数据可视化”暨“Python文本挖掘与自然语言处理”核心技术高级研修班的通知

    中国通信工业协会通信和信息技术创新人才培养工程项目办公室 通人办[2017] 第45号 "R语言机器学习与大数据可视化"暨"Python文本挖掘与自然语言处理" ...

  3. python 函数作用于矩阵_图解NumPy:常用函数的内在机制

    原标题:图解NumPy:常用函数的内在机制 来源: 机器之心 支持大量多维数组和矩阵运算的 NumPy 软件库是许多机器学习开发者和研究者的必备工具,本文将通过直观易懂的图示解析常用的 NumPy 功 ...

  4. Python之pandas:pandas中缺失值与空值处理的简介及常用函数(drop()、dropna()、isna()、isnull()、fillna())函数详解之详细攻略

    Python之pandas:pandas中缺失值与空值处理的简介及常用函数(drop().dropna().isna().isnull().fillna())函数详解之详细攻略 目录 pandas中缺 ...

  5. Python numpy.testing.assert_warns函数方法的使用

    NumPy(Numerical Python的缩写)是一个开源的Python科学计算库.使用NumPy,就可以很自然地使用数组和矩阵.NumPy包含很多实用的数学函数,涵盖线性代数运算.傅里叶变换和随 ...

  6. Python numpy.testing.assert_approx_equal函数方法的使用

    NumPy(Numerical Python的缩写)是一个开源的Python科学计算库.使用NumPy,就可以很自然地使用数组和矩阵.NumPy包含很多实用的数学函数,涵盖线性代数运算.傅里叶变换和随 ...

  7. Python序列类型常用函数练习:enumerate() reversed() sorted() zip()

    Python序列类型常用函数练习 这里使用代码示例,练习使用序列类型的常用函数,包括: enumerate() reversed() sorted() zip() 直接看python代码 #enume ...

  8. Python字符串(string)常用函数

    Python字符串(string)常用函数 find:检测字符串是否包含指定字符,如果存在则返回开始的索引值,否则返回-1 str1 = 'hello world' print(str1.find(' ...

  9. python内建常用函数

    #标题1# # python内建常用函数# #python内建常用函数 在这里插入图片描述 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020030211175 ...

最新文章

  1. 2021全球数字经济大会“北京数字经济体验周”清华数为大数据开发工具DWF体验培训工作圆满结束...
  2. 【转】Azure Logic App Demo
  3. [POI2009]Wie
  4. TypeScript基础类型
  5. gogoclient java_链路跟踪-GRPC请求 - GoFrame官网 - 类似PHP-Laravel, Java-SpringBoot的Go企业级开发框架...
  6. android okhttp+解析json( okhttp 工具类)
  7. 谁能再一次接受“南京大×××”不存在?
  8. 艺电模拟城市开源代码读后感
  9. 计算机wifi共享usb设备,手机设置wifi热点如何通过usb和电脑共享网络
  10. 【JJ斗地主官网下载】在线斗地主比赛赢大奖,中文棋牌游戏
  11. 谈谈区块链的常用架构
  12. 计算广告笔记05-搜索广告与竞价广告
  13. 以下为linux下64位c,64位ntohl()在C?
  14. 阿里云服务器好用吗?
  15. 口袋里的较量–盘点中国移动互联网“第一次世界大战”
  16. Java //PP2.16编写一个applet,画出北斗七星,并在夜空中添加一些其他的星星
  17. OkHttp之线程池的使用
  18. 1.3 万亿条数据查询,如何做到毫秒级响应?
  19. vncserver win10设置安装
  20. Java中,通过synchronizedXxx()将线程不安全的集合转换成线程安全的集合

热门文章

  1. C# winform combobox 在绑定数据之后插入一项选择项
  2. 以太坊和Metamask开发web应用时不再需要密码
  3. Linux中的进程创建函数fork
  4. 2月1日学习内容整理:算法
  5. 《Web应用漏洞侦测与防御:揭秘鲜为人知的攻击手段和防御技术》——导读
  6. Eclipse与MyEclipse增加主题
  7. lduan Exchange 2013 公共文件夹(十)
  8. Java必备:java入门、java学习
  9. 在 Cent OS 6.5 中安装桌面环境
  10. Unix编程艺术心得