python学习之数组和矩阵

 1,linspace(),可以通过等差数列的一维数组的参数 endpoint 指定是否包含终值,默认 True 为包含终值。如果设定为 False,不包含终值。

    logspace(a,b,num),参数和linspace一样的,只是起始值10^a和终止值10^b间有num个值。

2,b = JS.arange(0,1,0.1) #步长为0.1,范围在(0,1)之间。

3,c = JS.array([[1,2,3,4],[4,5,6,7],[7,8,9,10]]);

c.shape = 2,6 #将矩阵转为2行6列

c.shape = 3,-1#3行不限列

c.shape = -1,3#3列不限行

数组操作笔记:
A[ : 2]:表示索引 0至1行;
A[ :, 2]:表示所有行的第3列。
[::-1]涉及的数字倒序输出:

注:格式:起始位置:终止位置:步长(None默认为默认值,为1)
注意:[::2,2:]
Slice(None,None,2),slice(2,None,None)

4,用 fromfunction 通过此函数创建数组

JS.fromfunction(fun,(m,n)),建立一个m*n的二维数组,也可以建立一个n个元素的一维数组JS.fromfunction(fun,n),

import numpy as JS
def func(i,j):
    return (i + 1)*(j+1)
    
#(9,9)建立一个9*9的数组,
A = JS.fromfunction(func,(9,9)) 
print(A)

5,建立数组

import numpy as JS
#建立一个差为1的一维数组
A = JS.arange(0,10,1) 
print(A)
print(A[3:8])
#打印等差为2的数组
print(A[3:8:2])
 
BA = JS.array([[1,2,3,4],[5,6,7,8]])
B = BA[1,2]
C = BA[(1,2)]
print(BA)
print(B)
print(C)

6,slice的学习和使用

import numpy as JS
A = JS.array([[1,2,3,4],[5,6,7,8]])
"""
a[,,]一般指的是三个参数,第一个和第二个参数是上下限,第三个参数是步长
"""
#::2不限上下限,步长为2,即取第一行,2:上限为2,其它不限
B = A[::2,2:] 
print(A)
print(B)

7,字符数组

import numpy as JS
Person = JS.dtype({
'names':['name','age','weight'],
'formats':['S30','i','f']},align = True)
a = JS.array([('wan',44,72),('jun',35,67)],dtype = Person)
print(a)

总结:1,有时候函数传递的不止一个值,在python中我们利用u=np.dot(v),我们传递的是一个向量v(里面的是一系列的v1,v2,v3...),我们得到的返回值也是一个向量。

2,多用矩阵,少用数组,因为我们用数组时不确定时行数组还是列数组,容易造成错误。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陌上花开缓缓归以

你的鼓励将是我创作的最大动力,

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值