课上笔记(六)(Python)

课上笔记(六)(Python)

  • 学习使我快乐
NumPy→(Numerical+Python)

首先你需要知道,以后基本会使用
import numpy as np
import pandas as pd

  • ndarratys
    NumPy有着极为强大对象:ndarrays(Python的扩展)

首先尝试着创建一个ndarrays

输入:
		import numpy as np
		a = np.array([1, 2, 3, 4, 5],str)
		print(a)

输出:
		['1' '2' '3' '4' '5']

有一件事必须知道是创建一个ndarrays[作为一个数组,其中的所有的类型都相同,必须]

numpy.array( [ ], 类型) ————→第二个参数将用于指定存储数据的类型

输入:
		import numpy as np
		a = np.array([1, 2, 3, 4, 5])
		print(a)

输出:
		[1 2 3 4 5]
  • 还可以直接用迭代对象创建(有点优秀啊)
输入:
		import numpy as np
		a = np.arange(1, 10, 2)
		print(a)

输出:
		[1,3,5,7,9]
  • Python识别ndarrays类型即为ndarrays
输入:
		import numpy as np
		a = np.array([0,1,2,3,4])
		print(type(a))

输出:
		<class 'numpy.ndarray'>

numpy.array( [ ], ndmin = ) ndmin = 后为最小维度

输入:
		import numpy as np 
		a = np.array([1,2,3,4,5], ndmin = 3)  
		b = np.array([1,2,3,4,5], ndmin = 2) 
		c = np.array([1,2,3,4,5], ndmin = 1) 
		print (a)
		print (b)
		print(c)

输出:
		[[[1 2 3 4 5]]]
		[[1 2 3 4 5]]
		[1 2 3 4 5]
  • shape
    使用np.shape可以按照数组维度返回长度
    即:
输入:
		import numpy as np
		b = np.array([[1,2],[4,5],[7,8]])
		print(b.shape)
		print(b[0,0],b[0,1],b[1,0])

输出:
		(3, 2)————→第一维度3个元素,第二维度2个元素
		1 2 4

如果同一纬度长度不同则返回none(同纬度长度不同的正常不在我们的考虑之内)

输入:
		import numpy as np
		b = np.array([[1,2],[4,5,6],[7,8,9]])
		print(b.shape)

输出:
		(3,)
  • zeros
    zeros可以把ndarrays中的所有值都更改成0
    np.zeros(),括号中的元素是一个元组,和shape返回的是同一种东西
输入:
		import numpy as np 
		a = np.zeros((2,3,4))
		print(a)

输出:
		[[[0. 0. 0. 0.]
		  [0. 0. 0. 0.]
		  [0. 0. 0. 0.]]

		 [[0. 0. 0. 0.]
		  [0. 0. 0. 0.]
		  [0. 0. 0. 0.]]]
  • ones
    ones可以把ndarrays中的所有值都更改成1
输入:
		import numpy as np 
		a = np.ones((2,3,4))
		print(a)
输出:
		[[[1. 1. 1. 1.]
		  [1. 1. 1. 1.]
		  [1. 1. 1. 1.]]

		 [[1. 1. 1. 1.]
		  [1. 1. 1. 1.]
		  [1. 1. 1. 1.]]]
  • size
    正常来说,求多维数组中的元素总数的求法应该是shape返回的元组中所有元素的积,不过有一个专门的方法是来求多维数组中元素的总数的。
输入:
		import numpy as np 
		a = np.zeros((2,3,4))
		print(a.size)
输出:
		24 ←————2*3*4=24
多维数组的切片

数组可以进行切片,多维数组也可以进行切片
简单来说,就是从左开始切片,切片是从一维开始切的

输入:
		import numpy as np 
		a = np.arrays([[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]])
		print(a[:3:,:4:])

输出:
		[[ 1  2  3  4]
		 [ 6  7  8  9]
		 [11 12 13 14]]

↑←首先,切从左开始先切:3:,先从一维开始切,所以我们拿出来一维的前三个
[[1,2,3,4,5]
[6,7,8,9,10]
[11,12,13,14,15]]
然后,从左依次切到:4:,再来切二维,所以我们拿出二维的(每个二维数组的)前四个
[[ 1 2 3 4]
[ 6 7 8 9]
[11 12 13 14]]

  • ndim ←—————返回维度数
输入:
		import numpy as np
		a = np.array([1, 2, 3, 4, 5])
		print(a.ndim)

输出:
		1
输入:
		import numpy as np
		a = np.arrays([[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]])
		print(a.ndim)

输出:
		2
  • reshape ←—————将多维数组返回成另一种的多维数组数组(如果reshape后的元组中的元素乘积不等于其元素总和(即:size返回值),则报错)
输入:
		import numpy as np
		a = np.arange(25)
		print(a)
		a = a.reshape((5,5))
		print(a)

输出:
		[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23]


		[[ 0  1  2  3  4  5]
		 [ 6  7  8  9 10 11]
		 [12 13 14 15 16 17]
		 [18 19 20 21 22 23]]


		[[ 0  1  2  3  4  5  6  7]
		 [ 8  9 10 11 12 13 14 15]
		 [16 17 18 19 20 21 22 23]]
  • 布尔屏蔽
    将一个条件表达式赋值给一个变量,这个变量就会变成一个由false和true组成的数组
    将这个变量用于其他数组,就会自动选择true了
输入:
		import numpy as np
		a = np.arange(0,100,10)
		b = a>=50
		print(b)
		print(a[b])
		c = np.arange(0,1000,100)
		b = c>=800
		print(b)
		print(a[b])

输出:
		[False False False False False  True  True  True  True  True]
		[50 60 70 80 90]
		[False False False False False False False False  True  True]
		[80 90]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值