Numpy学习笔记1

1、python自带的【list】局限性:

array = [1,2,3,4,5]
array + 1

Traceback (most recent call last):
File “<pyshell#1>”, line 1, in
array + 1
TypeError: can only concatenate list (not “int”) to list

建议使用:

import numpy as np
array = np.array([1,2,3,4,5])
print(type(array))

·<class ‘numpy.ndarray’>

用**np.array()**操作后即可执行如下操作:

array2 = array + 1
array + array2

注意:

array * array2 

为对应元素相乘。

2、array.shape:

array = [1,2,3,4,5]
array.shape
(5,)

而原python无list.shape属性。

np.array([[1,2,3], [4,5,6]]).shape
>(2,3)
np.array([[[1,2,3], [4,5,6]]])
>(1,2,3)

3、对ndarray结构来说,里面所有的元素必须是同一类型。如果不是,会自动地向下进行转换。

tang_list = [1,2,3,4,5.1]
tang_array = np.array(tang_list)
tang_array
>array([1., 2., 3., 4., 5. )
type(tang_array)
>numpy_ndarray
tang_array.dtype
>dtype('int32')

4、列表的本质是指针

array2 = array1

当对array2进行修改时,array1也会被执行相同操作。若想保持array1不变,可使用:

array2 = array1.copy()

这样array1和array2指向不同区域。

5、创建数据集

tang_array = np.arrange(0,100,10)
tang_array
>array([0, 10, 20, 30, 40, 50, 60, 70, 80, 90])

bool类型:

mask = np.array([0, 0, 0, 0, 0, 0, 1, 1, 1, 1], dtype = bool)
mask
>array([False, False, False, False, False, False, True, True, True, True])
tang_array[mask]
array([60, 70, 80, 90])

随机生成:

random_array = np.random.rand(10)
mask = random_array > 0.5
>array([False, False, True, ...])

返回一个bool类型值。

np.where(tang_array > 30)
>(array([4, 5, 6, 7, 8, 9], dtype=int64), )

返回一个索引值。

创建过程也可以选定类型:

tang_array = np.array([1,2,3,4,5], dtype = float32)

如果列表出现数值和字符串共存的情况,可指定object类型

tang_array = np.array([1, 2, 3, 4, 5, 'str'], dtype = np.object)
tang_array
>array([1, 2, 3, 4, 5, 'str'], dtype = np.object)

6、利用astype进行数据类型转换

tang_array.astype(np.float32)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值