Numpy读书笔记

本文是关于Numpy的详细读书笔记,涵盖ndarray对象的创建、数据类型、数组运算及索引,还包括条件逻辑的数组表达、数学统计方法、输入输出以及线性代数和随机数生成等内容,是深入理解并运用Numpy的宝贵资料。
摘要由CSDN通过智能技术生成

ndarray 多维数组对象

创建ndarray

# 列表转换
data1 = [6, 7.5, 8, 0, 1]
arr1 = np.array(data1)

# 嵌套序列
data2 = [[1,2,3,4],[5,6,7,8]]
arr2 = np.array(data2)

# 其他创建数组的函数
np.zeros(10)
np.zeros((3,6))
np.empty((2,3,2)) #返回的是未初始化的值,非零
np.arange(15)
...

ndarray的数据类型

# 创建的时候指定类型
arr1 = np.array([1,2,3], dtype=np.float64) #双精度浮点
arr2 = np.array([1,2,3], dtype=np.int32)

# 使用ndarray的astype显示转换类型,任何时候使用astype会创建新数组
arr = np.array([1,2,3,4,5,6])
arr.dtype
float_arr = arr.astype(np.float64)

# 如果字符串数组全部表示的是数字,可转
num_strings = np.array(['1.25','-9.6','42'],dtype=np.string_)
num_strings.astype(float)

数组和标量之间的运算

# 大小相等的数组之间的任何算术运算都会应用到元素级别
arr = np.array([[1,2,3],[4,5,6]])
arr_pow = arr*arr

# 数组与标量运算
1/arr
arr*0.5

基本的索引和切片

arr = np.array(10)
arr[5]
arr[5:8]
# 将一个标量赋值给一个切片时,该值自动广播到整个选区
arr[5:8] = 12

# 跟列表的区别:数组切片是原始数组的视图,不会被复制,修改反应到源数组
arr_slice = arr[5:8]
arr_slice[1] = 12345

# 如果想要得到ndarray切片的一份副本,需要显示调用
arr[5:8].copy()

# 对于2维数组
arr2d = np.array([[1,2,3],[
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值