np.square()

函数返回一个新数组,该数组的元素值为源数组元素的平方。 源阵列保持不变。

示例:

import numpy as np

a = np.array([[1, 2, 3],
[4, 5, 6]])
b = np.square(a)
print(a)
print(b)

np.linalg.norm()

linalg = linear(线性) + algebra(代数), norm表示范数

x_norm = np.linalg.norm(x, ord=None, axis=None, keepdims=False)

  • x代表矩阵,可以是一维
  • axis=0,按列向量处理,求多个列向量的范数;axis=1,按行向量处理,求多个行向量的范数
  • ord矩阵的范数

ord常用参数 当x是向量时

参数 说明 计算方法
默认 二范数 \(\sqrt{x_1^2 + x_2^2+ ...+x_n^2}\)
ord=2 同上 同上
ord=1 一范数 $
ord="fro" Frobenius范数:其值为对所有元素的绝对值的平方求和后开平方。

ord常用参数 当x是矩阵时

参数 计算方法
ord=1 列和的最大值
ord=2 求特征值,然后求最大特征值得算术平方根

注意,当x是矩阵时,参数axis才有意义

示例:

import numpy as np

a = np.array([[1, 2, 3],
[4, 5, 6]])
x1 = np.linalg.norm(a, ord=2)
x2 = np.linalg.norm(a, ord=1)
x3 = np.linalg.norm(a, ord=2, axis=1)
print(x1)
print(x2)
print(x3)

np.martix()

自带广播功能

import numpy as np

M = np.array([[1, 2, 3],
[4, 5, 6]]) test = np.array([[1, 2, 3],
[1, 2, 2]]) train = np.array([[1, 1, 1],
[1, 1, 1],
[1, 1, 1]]) te = np.square(test).sum(axis=1)
tr = np.square(train).sum(axis=1)
te = te.reshape(te.shape[0], -1)
print("te:", te)
print("tr:", tr) dists = M + np.matrix(tr) + np.matrix(te)
print(dists)

各变量的变化情况:

np.array_split(x, n)

将矩阵x切割为七部分

import numpy as np

x = np.arange(25)
y = np.array_split(x, 7) print(type(y))
print(y)

返回了一个列表

np.concatenate(x, axis=?)

import numpy as np

x = np.arange(25)
print(x) y = np.array_split(x, 7)
print(y) print(np.concatenate(y))

axis = 0 列方向对齐

axis = 1 行方向对齐

np.square()

沿着水平方向将数组堆叠起来。

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
res = np.hstack((arr1, arr2)) print(res) arr1 = np.array([[1, 2], [3, 4], [5, 6]])
arr2 = np.array([[7, 8], [9, 0], [0, 1]])
res = np.hstack((arr1, arr2)) print(res)

np.eye()

import numpy as np

labels = np.array([[1, 3],[2, 3],[0, 2],[1, 3]])
print(labels.shape)
print(labels, "\n\n**********\n") x = np.eye(5)[labels]
print(x)
print(x.shape)



大概这样理解,先生成一个shape为(4,2,5)的矩阵,意思就是4个2*5的矩阵.然后对某些地方的值赋1,什么地方那?也就是labels提供的位置

np.where

详见:https://www.cnblogs.com/massquantity/p/8908859.html

numpy常用函数记录的更多相关文章

  1. numpy常用函数学习

    目录numpy常用函数学习点乘法线型预测线性拟合裁剪.压缩和累乘相关性多项式拟合提取符号数组杂项点乘法该方法为数学方法,但是在numpy使用的时候略坑.numpy的点乘为a.dot(b)或numpy. ...

  2. 《ORACLE数据库管理与开发》第三章学习之常用函数记录

    <ORACLE数据库管理与开发>第三章学习之常用函数记录 注:文章中的*代表所要操作的列名 1.lower(*)/upper(*),将此列下的值转为小写/大写 2.initcap(*):把 ...

  3. numpy学习笔记 - numpy常用函数、向量化操作及基本数学统计方法

    # -*- coding: utf-8 -*-"""主要记录代码,相关说明采用注释形势,供日常总结.查阅使用,不定时更新.Created on Fri Aug 24 19 ...

  4. 006 numpy常用函数

    属于Numpy的函数. 一:通用函数 1.说明 是一种对ndarray中的数据执行元素级运算的函数. 2.一元函数 3.二元函数 二:矢量计算 1.numpy.where 主要有两种用法 np.whe ...

  5. Python常用函数记录

    Python常用函数/方法记录 一. Python的random模块: 导入模块: import random 1. random()方法: 如上如可知该函数返回一个[0,1)(左闭右开)的一个随机的 ...

  6. Python数据分析--Numpy常用函数介绍(2)

    摘要:本篇我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.学习读写文件的方法,并尝试函数式编程和NumPy线性代数运算,来学习NumPy的常用函数. ...

  7. Numpy常用函数用法大全

    .ndim :维度.shape :各维度的尺度 (2,5).size :元素的个数 10.dtype :元素的类型 dtype(‘int32’).itemsize :每个元素的大小,以字节为单位 ,每 ...

  8. Python数据分析--Numpy常用函数介绍(4)--Numpy中的线性关系和数据修剪压缩

    摘要:总结股票均线计算原理--线性关系,也是以后大数据处理的基础之一,NumPy的 linalg 包是专门用于线性代数计算的.作一个假设,就是一个价格可以根据N个之前的价格利用线性模型计算得出. 前一 ...

  9. Python数据分析--Numpy常用函数介绍(5)--Numpy中的相关性函数

    摘要:NumPy中包含大量的函数,这些函数的设计初衷是能更方便地使用,掌握解这些函数,可以提升自己的工作效率.这些函数包括数组元素的选取和多项式运算等.下面通过实例进行详细了解. 前述通过对某公司股票 ...

随机推荐

  1. Sky Code(poj3904)

    Sky Code Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2085   Accepted: 665 Descripti ...

  2. python学习第三天:python基础(数据类型和变量)

    注释 以  # 开头的语句是注释,如,注释不会被编译运行: 格式 当语句以冒号:结尾时,缩进的语句视为代码块.按照约定俗成的管理,应该始终坚持使用4个空格的缩进(在文本编辑器中,需要设置把Tab自动转 ...

  3. Towards Deep Learning Models Resistant to Adversarial Attacks

    目录 概 主要内容 Note Madry A, Makelov A, Schmidt L, et al. Towards Deep Learning Models Resistant to Adver ...

  4. Vue(27)vue-codemirror实现在线代码编译器

    前言 如果我们想在Web端实现在线代码编译的效果,那么需要使用组件vue-codemirror,他是将CodeMirror进行了再次封装 支持代码高亮 62种主题颜色,例如monokai等等 支持js ...

  5. CS5265完全替代兼容龙迅LT8711|Type-C/DP1.2 to HDMI2.0方案芯片|CS5265兼容TYPEC手机笔电

    龙迅LT8711是一款Type-C/DP1.2 to HDMI2.0方案芯片.LT8711HE是一款高性能Type-C/DP1.2至HDMI2.0转换器,设计用于将USB typec或DP1.2源连接 ...

  6. Java开发之项目分包

    在我们开始准备写一个大点规模的项目时,我们不能随便地从main函数就开始往下写,要有清晰的逻辑思路和各个层面上的数据的传递和交互. 同时在我们写项目时也应该分出不同的包来做不同的事情,比如view包就 ...

  7. 编写Java程序,利用List实现报数游戏的实现思路

    返回本章节 返回作业目录 需求说明: 利用List实现报数游戏 在控制台输入一个大于3的正整数,该整数表示有多少人,如在控制台输入10,表示有10个人,10个人围成一个圆圈,从序号1开始为这些人依次编 ...

  8. Hexo博客部署到腾讯云服务器全过程(Nginx,证书,HTTPS),你要的这里都有

    背景 说来也惭愧,博客已经搭建很久了,一直免费的部署在 Coding 和 Github Pages 上,前者迁移到腾讯云 Serverless,导致原有的配置始终有问题,没时间仔细研究,刚好腾讯服务器 ...

  9. java -jar 指定logback.xml、application.yaml

    java -jar 指定logback.xml -Dlogging.config="C:\logbacs\logback.xml" 示例:java -jar   -Dlogging ...

  10. 一键抠除路人甲,昇腾CANN带你识破神秘的“AI消除术”

    摘要:都说人工智能改变了生活,你感觉到了么?AI的魔力就在你抠去路人甲的一瞬间来到了你身边.今天就跟大家聊聊--神秘的"AI消除术". 引语 旅途归来,重温美好却被秀丽河山前的路人 ...