重要对象:ndarray (n-dimension-array)
每个ndarray只能装一种数据类型!如果类型不匹配,NumPy 将会向上转换(如果可行).
PS:向上转化:字符串(最大)>浮点型(次之)>整数型(最小)
ndarray中的每个元素在内存中使用相同大小的块.
查看数据类型:a.dtype
改变数据类型:astype()
ndarray 与 python 原生 array 有什么区别
NumPy 数组在创建时有固定的大小,不同于Python列表(可以动态增长)。更改ndarray的大小将创建一个新的数组并删除原始数据。
NumPy 数组中的元素都需要具有相同的数据类型,因此在存储器中将具有相同的大小。数组的元素如果也是数组(可以是 Python 的原生 array,也可以是 ndarray)的情况下,则构成了多维数组。
NumPy 数组便于对大量数据进行高级数学和其他类型的操作。通常,这样的操作比使用Python的内置序列可能更有效和更少的代码执行。
越来越多的科学和数学的基于Python的包使用NumPy数组
矢量,向量:既有大小又有方向的一个变量
优点:矢量化代码更简洁易读
更少的代码行通常意味着更少的错误
该代码更接近地类似于标准数学符号(使得更容易,通常,以正确地编码数学构造)
矢量化导致更多的“Pythonic”代码。如果没有向量化,我们的代码将会效率很低,难以读取for循环。
注意:有一点要尤其注意的是: np.nan, np.inf 都是浮点类型
结合ndarray中的数据类型必须是相同的, 也就是说数组中如何有一个数据是空值,那么所有的数据都只能是浮点型.
np.arrange与range的区别是,前者可以生成小数线性序列的数组,后者只能生成整数线性序列
想用python的mark功能更改字号大小,但是输入###以后并没有变成标题大字,而是前面多了###,直接显示出来了,如图想问怎么才能在python里面使用MARK功能的时候更改字体大小