Python 一维及多维数组及基本操作

2023-05-16

2. 创建一般的多维数组 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

import numpy as np

= np.array([1,2,3], dtype=int)  # 创建1*3维数组   array([1,2,3])

type(a)  # numpy.ndarray类型

a.shape  # 维数信息(3L,)

a.dtype.name   # 'int32'

a.size   # 元素个数:3

a.itemsize  #每个元素所占用的字节数目:4

 

 

b=np.array([[1,2,3],[4,5,6]],dtype=int)  # 创建2*3维数组  array([[1,2,3],[4,5,6]])

b.shape  # 维数信息(2L,3L)

b.size   # 元素个数:6

b.itemsize   # 每个元素所占用的字节数目:4

 

 

c=np.array([[1,2,3],[4,5,6]],dtype='int16')  # 创建2*3维数组  array([[1,2,3],[4,5,6]],dtype=int16)

c.shape  # 维数信息(2L,3L)

c.size   # 元素个数:6

c.itemsize   # 每个元素所占用的字节数目:2

c.ndim  # 维数

 

 

d=np.array([[1,2,3],[4,5,6]],dtype=complex)    #  复数二维数组

d.itemsize  # 每个元素所占用的字节数目:16

d.dtype.name  # 元素类型:'complex128'

3. 创建特殊类型的多维数组 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

a1 = np.zeros((3,4))    # 创建3*4全零二维数组

输出:

array([[ 0.,  0.,  0.,  0.],

       0.,  0.,  0.,  0.],

       0.,  0.,  0.,  0.]])

a1.dtype.name   # 元素类型:'float64'

a1.size  # 元素个数:12

a1.itemsize  # 每个元素所占用的字节个数:8

 

 

a2 = np.ones((2,3,4), dtype=np.int16)  # 创建2*3*4全1三维数组

a2 = np.ones((2,3,4), dtype='int16')     # 创建2*3*4全1三维数组

输出:

array([[[1111],

        [1111],

        [1111]],

 

       [[1111],

        [1111],

        [1111]]], dtype=int16)

 

 

a3 = np.empty((2,3))  # 创建2*3的未初始化二维数组

输出:(may vary)

array([[ 1.,  2.,  3.],

       4.,  5.,  6.]])

 

 

a4 = np.arange(10,30,5)   # 初始值10,结束值:30(不包含),步长:5

输出:array([10152025])

a5 = np.arange(0,2,0.3)    # 初始值0,结束值:2(不包含),步长:0.2

输出:array([ 0. ,  0.3,  0.6,  0.9,  1.2,  1.5,  1.8])

 

 

from numpy import pi

np.linspace(029)   # 初始值0,结束值:2(包含),元素个数:9

输出:

array([ 0.  ,  0.25,  0.5 ,  0.75,  1.  ,  1.25,  1.5 ,  1.75,  2.  ])

= np.linspace(02*pi, 9)

输出:

array([ 0.        ,  0.78539816,  1.57079633,  2.35619449,  3.14159265,

        3.92699082,  4.71238898,  5.49778714,  6.28318531])

 

 

= np.arange(6)

输出:

array([012345])

= np.arange(12).reshape(4,3)

输出:

array([[ 0,  1,  2],

       3,  4,  5],

       6,  7,  8],

       91011]])

= np.arange(24).reshape(2,3,4)

输出:

array([[[ 0,  1,  2,  3],

        4,  5,  6,  7],

        8,  91011]],

 

       [[12131415],

        [16171819],

        [20212223]]]) 

使用numpy.set_printoptions可以设置numpy变量的打印格式

在ipython环境下,使用help(numpy.set_printoptions)查询使用帮助和示例

4. 多维数组的基本操作

加法和减法操作要求操作双方的维数信息一致,均为M*N为数组方可正确执行操作。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

= np.arange(4)

输出:

array([0123])

= a**2

输出:

array([0149])

= 10*np.sin(a)

输出:

 array([ 0.        ,  8.41470985,  9.09297427,  1.41120008])

 

 

n < 35

输出:

array([ True,  True,  True,  True], dtype=bool)

 

= np.array([[1,1],[0,1]])

= np.array([[2,0],[3,4]])

= * B    # 元素点乘

输出:

array([[20],

       [04]])

= A.dot(B)   # 矩阵乘法

输出:

array([[54],

       [34]])

= np.dot(A,B)   # 矩阵乘法

输出:

array([[54],

       [34]])

多维数组操作过程中的类型转换

When operating with arrays of different types, the type of the resulting array corresponds to the more general or precise one (a behavior known as upcasting)

即操作不同类型的多维数组时,结果自动转换为精度更高类型的数组,即upcasting

1

2

3

4

= np.ones((2,3),dtype=int)      # int32

= np.random.random((2,3))     # float64

+= a  # 正确

+= b  # 错误

1

2

3

4

5

6

7

8

9

10

= np.ones(3,dtype=np.int32)

= np.linspace(0,pi,3)

= + b

= np.exp(c*1j)

输出:

array([ 0.54030231+0.84147098j-0.84147098+0.54030231j,

       -0.54030231-0.84147098j])

d.dtype.name

输出:

 'complex128'

多维数组的一元操作,如求和、求最小值、最大值等

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

= np.random.random((2,3))

a.sum()

a.min()

a.max()

 

 

= np.arange(12).reshape(3,4)

输出:

array([[ 0,  1,  2,  3],

       4,  5,  6,  7],

       8,  91011]])

b.sum(axis=0)    # 按列求和

输出:

array([12151821])

b.sum(axis=1)    # 按行求和

输出:

array([ 62238])

b.cumsum(axis=0)   # 按列进行元素累加

输出:

array([[ 0,  1,  2,  3],

       4,  6,  810],

       [12151821]])

b.cumsum(axis=1)   # 按行进行元素累加

输出:

array([[ 0,  1,  3,  6],

       4,  91522],

       8172738]])

universal functions

1

2

3

4

5

= np.arange(3)

np.exp(B)

np.sqrt(B)

= np.array([2.,-1.,4.])

np.add(B,C)

其他的ufunc函数包括:

all, any, apply_along_axis, argmax, argmin, argsort, average, bincount, ceil, clip, conj, corrcoef, cov, cross, cumprod, cumsum, diff, dot, floor,inner, lexsort, max, maximum, mean, median, min, minimum, nonzero, outer, prod, re, round, sort, std, sum, trace, transpose, var,vdot, vectorize, where

5. 数组索引、切片和迭代

1

2

3

4

5

6

= np.arange(10)**3

a[2]

a[2:5]

a[::-1# 逆序输出

for in a:

    print (i**(1/3.))

1

2

3

4

5

6

7

8

def f(x,y):

    return 10*x+y

= np.fromfunction(f,(5,4),dtype=int)

b[2,3]

b[0:5,1]

b[:,1]

b[1:3,:]

b[-1]

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

= np.array([[[0,1,2],[10,11,12]],[[100,101,102],[110,111,112]]])

输出:

array([[[  0,   1,   2],

        10,  11,  12]],

 

       [[100101102],

        [110111112]]])

c.shape

输出:

(2L2L3L)

c[0,...]

c[0,:,:]

输出:

array([[ 0,  1,  2],

       [101112]])

c[:,:,2]

c[...,2]

输出:

array([[  2,  12],

       [102112]])

 

for row in c:

    print(row)

 

for element in c.flat:

    print(element)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

= np.floor(10*np.random.random((3,4)))

输出:

array([[ 3.,  9.,  8.,  4.],

       2.,  1.,  4.,  6.],

       0.,  6.,  0.,  2.]])

a.ravel()

输出:

array([ 3.,  9.,  8., ...,  6.,  0.,  2.])

a.reshape(6,2)

输出:

array([[ 3.,  9.],

       8.,  4.],

       2.,  1.],

       4.,  6.],

       0.,  6.],

       0.,  2.]])

a.T

输出:

array([[ 3.,  2.,  0.],

       9.,  1.,  6.],

       8.,  4.,  0.],

       4.,  6.,  2.]])

a.T.shape

输出:

(4L3L)

a.resize((2,6))

输出:

array([[ 3.,  9.,  8.,  4.,  2.,  1.],

       4.,  6.,  0.,  6.,  0.,  2.]])

a.shape

输出:

(2L6L)

a.reshape(3,-1)

输出:

array([[ 3.,  9.,  8.,  4.],

       2.,  1.,  4.,  6.],

       0.,  6.,  0.,  2.]])

详查以下函数:

ndarray.shape, reshape, resize, ravel

 

6. 组合不同的多维数组

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

= np.floor(10*np.random.random((2,2)))

输出:

array([[ 5.,  2.],

       6.,  2.]])

= np.floor(10*np.random.random((2,2)))

输出:

array([[ 0.,  2.],

       4.,  1.]])

np.vstack((a,b))

输出:

array([[ 5.,  2.],

       6.,  2.],

       0.,  2.],

       4.,  1.]])

np.hstack((a,b))

输出:

array([[ 5.,  2.,  0.,  2.],

       6.,  2.,  4.,  1.]])

 

 

from numpy import newaxis

np.column_stack((a,b))

输出:

array([[ 5.,  2.,  0.,  2.],

       6.,  2.,  4.,  1.]])

 

 

= np.array([4.,2.])

= np.array([2.,8.])

a[:,newaxis]

输出:

array([[ 4.],

       2.]])

b[:,newaxis]

输出:

array([[ 2.],

       8.]])

np.column_stack((a[:,newaxis],b[:,newaxis]))

输出:

array([[ 4.,  2.],

       2.,  8.]])

np.vstack((a[:,newaxis],b[:,newaxis]))

输出:

array([[ 4.],

       2.],

       2.],

       8.]])

np.r_[1:4,0,4]

输出:

array([12304])

np.c_[np.array([[1,2,3]]),0,0,0,np.array([[4,5,6]])]

输出:

array([[123000456]])

详细使用请查询以下函数:

hstack, vstack, column_stack, concatenate, c_, r_

7. 将较大的多维数组分割成较小的多维数组

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

= np.floor(10*np.random.random((2,12)))

输出:

array([[ 9.,  7.,  9., ...,  3.,  2.,  4.],

       5.,  3.,  3., ...,  9.,  7.,  7.]])

np.hsplit(a,3)

输出:

[array([[ 9.,  7.,  9.,  6.],

        5.,  3.,  3.,  1.]]), array([[ 7.,  2.,  1.,  6.],

        7.,  5.,  0.,  2.]]), array([[ 9.,  3.,  2.,  4.],

        3.,  9.,  7.,  7.]])]

np.hsplit(a,(3,4))

输出:

[array([[ 9.,  7.,  9.],

        5.,  3.,  3.]]), array([[ 6.],

        1.]]), array([[ 7.,  2.,  1., ...,  3.,  2.,  4.],

        7.,  5.,  0., ...,  9.,  7.,  7.]])]

实现类似功能的函数包括:

hsplit,vsplit,array_split

8.  多维数组的复制操作

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

= np.arange(12)

输出:

array([ 0,  1,  2, ...,  91011])

 

 

not copy at all

 

= a

is a    # True

b.shape = 3,4

a.shape  # (3L,4L)

 

def f(x)   # Python passes mutable objects as references, so function calls make no copy.

    print(id(x))   # id是python对象的唯一标识符

 

id(a)   # 111833936L

id(b)   # 111833936L

f(a)     # 111833936L

 

 

浅复制

 

= a.view()

is a   # False

c.base is a   # True

c.flags.owndata    # False

c.shape = 2,6

a.shape   # (3L,4L)

c[0,4= 1234

print(a)

输出:

array([[   0,    1,    2,    3],

       [1234,    5,    6,    7],

       [   8,    9,   10,   11]])

= a[:,1:3]

s[:] = 10

print(a)

输出:

array([[   0,   10,   10,    3],

       [1234,   10,   10,    7],

       [   8,   10,   10,   11]])

 

 

深复制

= a.copy()

is a   # False

d.base is a   # False

d[0,0= 9999

print(a)

输出:

array([[   0,   10,   10,    3],

       [1234,   10,   10,    7],

       [   8,   10,   10,   11]])

numpy基本函数和方法一览

Array   Creation

arange, array, copy, empty, empty_like, eye, fromfile, fromfunction, identity, linspace, logspace, mgrid, ogrid, ones, ones_like, r, zeros,zeros_like

Conversions

ndarray.astype, atleast_1d, atleast_2d, atleast_3d, mat

Manipulations

array_split, column_stack, concatenate, diagonal, dsplit, dstack, hsplit, hstack, ndarray.item, newaxis, ravel, repeat, reshape, resize,squeeze, swapaxes, take, transpose, vsplit, vstack

Questionsall, any, nonzero, where

Ordering

argmax, argmin, argsort, max, min, ptp, searchsorted, sort

Operations

choose, compress, cumprod, cumsum, inner, ndarray.fill, imag, prod, put, putmask, real, sum

Basic Statistics

cov, mean, std, var

Basic Linear Algebra

cross, dot, outer, linalg.svd, vdot

完整的函数和方法一览表链接:

https://docs.scipy.org/doc/numpy-dev/reference/routines.html#routines

9. 特殊的索引技巧

10. 寻找最大值/最小值及其对应索引值

11. ix_() function

 

12. 线性代数运算

 

“Automatic” Reshaping

 

13. 矩阵的创建

a = np.array([1,2,3])
a1 = np.mat(a)
输出:
matrix([[1, 2, 3]])
type(a1)
输出:
numpy.matrixlib.defmatrix.matrix
a1.shape
输出:
(1L, 3L)
a.shape
输出:
(3L,)


b=np.matrix([1,2,3])
输出:
matrix([[1, 2, 3]])



from numpy import *
data1 = mat(zeros((3,3)))
data2 = mat(ones((2,4)))
data3 = mat(random.rand(2,2))
data4 = mat(random.randint(2,8,size=(2,5)))
data5 = mat(eye(2,2,dtype=int))

14. 常见的矩阵运算

a1 = mat([1,2])
a2 = mat([[1],[2]])
a3 = a1 * a2
print(a3)
输出:
matrix([[5]])

print(a1*2)
输出:
matrix([[2, 4]])

a1 = mat(eye(2,2)*0.5)
print(a1.I)
输出:
matrix([[ 2.,  0.],
        [ 0.,  2.]])


a1 = mat([[1,2],[2,3],[4,2]])
a1.sum(axis=0)
输出:
matrix([[7, 7]])
a1.sum(axis=1)
输出:
matrix([[3],
        [5],
        [6]])
a1.max()  # 求矩阵元素最大值
输出:
4
a1.min()  # 求矩阵元素最小值
输出:
1

np.max(a1,0)  # 求矩阵每列元素最大值
输出:
matrix([[4, 3]])
np.max(a1,1)  # 求矩阵每行元素最大值
输出:
matrix([[2],
        [3],
        [4]])


a = mat(ones((2,2)))
b = mat(eye((2)))
c = hstack((a,b))
输出:
matrix([[ 1.,  1.,  1.,  0.],
        [ 1.,  1.,  0.,  1.]])
d = vstack((a,b))
输出:
matrix([[ 1.,  1.],
        [ 1.,  1.],
        [ 1.,  0.],
        [ 0.,  1.]])

15. 矩阵、数组、列表之间的互相转换

aa = [[1,2],[3,4],[5,6]]
bb = array(aa)
cc = mat(bb)

cc.getA()  # 矩阵转换为数组
cc.tolist()  # 矩阵转换为列表
bb.tolist() # 数组转换为列表


# 当列表为一维时,情况有点特殊
aa = [1,2,3,4]
bb = array(aa)
输出:
array([1, 2, 3, 4])
cc = mat(bb)
输出:
matrix([[1, 2, 3, 4]])

cc.tolist()
输出:
[[1, 2, 3, 4]]

bb.tolist()
输出:
[1, 2, 3, 4]

cc.tolist()[0]
输出:
[1, 2, 3, 4]

参考博客:

https://www.cnblogs.com/xzcfightingup/p/7598293.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 一维及多维数组及基本操作 的相关文章

  • 使用Python开发Web应用程序

    我一直在用 python 做一些工作 但这都是针对独立应用程序的 我很想知道 python 的任何分支是否支持 Web 开发 有人还会建议一个好的教程或网站吗 我可以从中学习一些使用 python 进行 Web 开发的基础知识 既然大家都说
  • Python、Tkinter、更改标签颜色

    有没有一种简单的方法来更改按钮中文本的颜色 I use button text input text here 更改按下后按钮文本的内容 是否存在类似的颜色变化 button color red Use the foreground设置按钮
  • 如何打印没有类型的defaultdict变量?

    在下面的代码中 from collections import defaultdict confusion proba dict defaultdict float for i in xrange 10 confusion proba di
  • Python 多处理示例不起作用

    我正在尝试学习如何使用multiprocessing但我无法让它发挥作用 这是代码文档 http docs python org 2 library multiprocessing html from multiprocessing imp
  • 为 pandas 数据透视表中的每个值列定义 aggfunc

    试图生成具有多个 值 列的数据透视表 我知道我可以使用 aggfunc 按照我想要的方式聚合值 但是如果我不想对两列求和或求平均值 而是想要一列的总和 同时求另一列的平均值 该怎么办 那么使用 pandas 可以做到这一点吗 df pd D
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • 安装后 Anaconda 提示损坏

    我刚刚安装张量流GPU创建单独的后环境按照以下指示here https github com antoniosehk keras tensorflow windows installation 但是 安装后当我关闭提示窗口并打开新航站楼弹出
  • keras加载模型错误尝试将包含17层的权重文件加载到0层的模型中

    我目前正在使用 keras 开发 vgg16 模型 我用我的一些图层微调 vgg 模型 拟合我的模型 训练 后 我保存我的模型model save name h5 可以毫无问题地保存 但是 当我尝试使用以下命令重新加载模型时load mod
  • 在循环中每次迭代开始时将变量重新分配给原始值(在循环之前定义)

    在Python中 你使用 在每次迭代开始时将变量重新分配给原始值 在循环之前定义 时 也就是说 original 1D o o o for i in range 0 3 new original 1D revert back to orig
  • python pandas 中的双端队列

    我正在使用Python的deque 实现一个简单的循环缓冲区 from collections import deque import numpy as np test sequence np array range 100 2 resha
  • python 集合可以包含的值的数量是否有限制?

    我正在尝试使用 python 设置作为 mysql 表中 ids 的过滤器 python集存储了所有要过滤的id 现在大约有30000个 这个数字会随着时间的推移慢慢增长 我担心python集的最大容量 它可以包含的元素数量有限制吗 您最大
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • 当玩家触摸屏幕一侧时,如何让 pygame 发出警告?

    我使用 pygame 创建了一个游戏 当玩家触摸屏幕一侧时 我想让 pygame 给出类似 你不能触摸屏幕两侧 的错误 我尝试在互联网上搜索 但没有找到任何好的结果 我想过在屏幕外添加一个方块 当玩家触摸该方块时 它会发出警告 但这花了很长
  • Python:尝试检查有效的电话号码

    我正在尝试编写一个接受以下格式的电话号码的程序XXX XXX XXXX并将条目中的任何字母翻译为其相应的数字 现在我有了这个 如果启动不正确 它将允许您重新输入正确的数字 然后它会翻译输入的原始数字 我该如何解决 def main phon
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • Nuitka 未使用 nuitka --recurse-all hello.py [错误] 编译 exe

    我正在尝试通过 nuitka 创建一个简单的 exe 这样我就可以在我的笔记本电脑上运行它 而无需安装 Python 我在 Windows 10 上并使用 Anaconda Python 3 我输入 nuitka recurse all h
  • 如何从没有结尾的管道中读取 python 中的 stdin

    当管道来自 打开 时 不知道正确的名称 我无法从 python 中的标准输入或管道读取数据 文件 我有作为例子管道测试 py import sys import time k 0 try for line in sys stdin k k
  • 对输入求 Keras 模型的导数返回全零

    所以我有一个 Keras 模型 我想将模型的梯度应用于其输入 这就是我所做的 import tensorflow as tf from keras models import Sequential from keras layers imp
  • 从 Python 中的类元信息对 __init__ 函数进行类型提示

    我想做的是复制什么SQLAlchemy确实 以其DeclarativeMeta班级 有了这段代码 from sqlalchemy import Column Integer String from sqlalchemy ext declar

随机推荐

  • tensflow学习小知识tf.train.exponential_decay

    tf train exponential decay是tensflow1 X版本的2 版本使用以下语句 tf compat v1 train exponential decay 将指数衰减应用于学习率 tf compat v1 train
  • PyTorch学习系列之PyTorch:nn和PyTorch:optim优化

    PyTorch xff1a nn 在构建神经网络时 xff0c 我们经常考虑将计算分为几层 xff0c 其中一些层具有可学习的参数 xff0c 这些参数将在学习过程中进行优化 在TensorFlow xff0c 像包 Keras xff0c
  • tf.gather()用法详解

    tf gather params indices validate indices 61 None axis 61 None batch dims 61 0 name 61 None 请注意 xff0c 在CPU上 xff0c 如果找到超出
  • 代码学习之Python冒号详解

    最近看代码发现对冒号用法理解不够透彻 xff0c 记录学习一下 xff1a 1 冒号的用法 1 1 一个冒号 a i j 这里的i指起始位置 xff0c 默认为0 xff1b j是终止位置 xff0c 默认为len a xff0c 在取出数
  • Jupyter Notebook导入和删除虚拟环境 超详细

    记录一下Jupyter Notebook导入和删除虚拟环境的步骤 xff0c 网上博客参差不齐 xff0c 每次找好几个才看到简明容易理解的 方法一步骤 为不同的环境配置kernel 有时候使用conda命令创建了新的python环境 xf
  • tf.expand_dims用法详解

    看官方讲解一些博客感觉一直不是很懂 xff0c 下面是我的个人理解结合官方文档 xff0c 有问题欢迎指出 tf expand dims tf expand dims input axis 61 None name 61 None dim
  • argparse 命令行选项、参数和子命令解析器

    最近看到很多论文代码都是用解析器写的 argparse 命令行选项 参数和子命令解析器 argparse 模块可以让人轻松编写用户友好的命令行接口 程序定义它需要的参数 xff0c 然后 argparse 将弄清如何从 sys argv 解
  • torch.unsqueeze和 torch.squeeze() 详解

    1 torch unsqueeze 详解 torch unsqueeze input dim out 61 None 作用 xff1a 扩展维度 返回一个新的张量 xff0c 对输入的既定位置插入维度 1 注意 xff1a 返回张量与输入张
  • Android中获取唯一的id

    文章目录 Android唯一设备ID现状IMEIMAC地址唯一Id实现方案那些硬件适合硬件标识工具类 Android唯一设备ID现状 设备ID xff0c 简单来说就是一串符号 xff08 或者数字 xff09 xff0c 映射现实中硬件设
  • debian虚拟机下如何安装增强功能

    1 安装gcc和kernel headers gcc有可能默认安装的有 xff08 如果没有还需要安装gcc xff09 xff0c 但是还需要安装build essential sudo apt get install build ess
  • PyTorch学习系统之 scatter() 函数详解 one hot 编码

    torch Tensor scatter scatter 和 scatter 的作用是一样的 xff0c 只不过 scatter 不会直接修改原来的 Tensor xff0c 而 scatter 会 torch Tensor scatter
  • 最新RNN相关模型

    最近在看最新RNN相关模型 找到很多论文 Fundamentals of Recurrent Neural Network RNN and Long Short Term Memory LSTM network 递归神经网络 xff08 R
  • 知识追踪模型的应用

    背景 MOOC 近年来 xff0c 随着在线学习系统在教育环境中越来越普及 xff0c 在线学习人数越来越多 xff0c 教育者不可能追踪每一个学习者的知识状态并提供个性化的学习指导 xff1b 在线学习系统中的知识需要学习者通过各种冗余信
  • 自然语言处理之语料库

    语料库 定义 xff1a 语料库 corpus 就是存放语言材料的仓库 语言数据库 xff09 语料库技术的发展 早期 xff1a 语料库在语言研究中被广泛使用 xff1a 语言习得 方言学 语言教学 句法和语义 音系研究等 沉寂时期 xf
  • 知识追踪入门系列-论文资料汇总

    Paper xff1a 知识追踪相关论文 下载论文和代码见reference第一个链接 Deep Knowledge Tracing 首次提出将RNN用于知识追踪 xff0c 并能够基于复杂的知识联系进行建模 xff08 如构建知识图谱 x
  • 知识追踪方法比较

    DKT xff1a Deep knowledge tracing In Advances in neural information processing systems 这是一种开创性的方法 xff0c 它使用单层LSTM模型来预测学生的
  • 机器学习 注意力 笔记资料贴

    Self Attention与Transformer详解 https zhuanlan zhihu com p 47282410 写的非常详细 https jalammar github io illustrated transformer
  • 图像的几何变换maketform imtransform imresize imcrop

    背景 几何变换是将图像像素从一个位置映射到另一个位置 几何变换有五种常见类型 xff1a 剪切变换 平移变换 缩放变换 旋转变换和投影变换 它们如图4 1所示 在该图中 xff0c 原始图像显示在 A 中 xff0c 而变换后的图像显示在
  •  决策树(Decision Tree)原理及实现

    决策树 xff08 Decision Tree xff09 原理及实现 一 算法简介 1 1 基本模型介绍 决策树是一类常见的机器学习方法 xff0c 可以帮助我们解决分类与回归两类问题 模型可解释性强 xff0c 模型符合人类思维方式 x
  • Python 一维及多维数组及基本操作

    2 创建一般的多维数组 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 import numpy as np a 61 np array 1 2 3 dty