文章数据
收藏(次)

【python数据分析】第四章 NumPy基础

加关注
Numpy 的 ndarray: 多维数组对象
--------------------------------------------------------------------------------
import numpy as np

randn = np.random.randn(2, 3)
print(randn)
print(type(randn))
print(randn * 100)
print(randn.shape)
print(randn.dtype)

输出:
[[ 1.69293868 0.21207756 0.44923434]
[-0.88296686 0.6790367 -0.39535835]]
<class 'numpy.ndarray'>
[[169.29386813 21.20775601 44.92343386]
[-88.29668635 67.90366989 -39.53583547]]
(2, 3)
float64

说明:
ndarray 要求内部的数据类型是一样的, ndarray可以看成是一个变量进行运算,比如 randn * 10
--------------------------------------------------------------------------------
ndarray 的创建:
np.array() 进行创建
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
import numpy as np

arr = [0.1,1,2,3,4]
narr = np.array(arr)
print(narr)
print(narr.ndim, narr.shape, narr.dtype)
输出:
[0.1 1. 2. 3. 4. ]
1 (5,) float64

arr2 = [[1,2,3], [2,3,4], [3,4,5]]
narr2 = np.array(arr2)
print(narr2)
print(narr2.ndim, narr2.shape, narr2.dtype)
输出:他会自动推断一种合适的类型
[[1 2 3]
[2 3 4]
[3 4 5]]
2 (3, 3) int32

ndim 表示维度
shape 形状
dtype 元素的数据类型

除np.array之外,还有一些函数也可以新建数组。比如,zeros和ones分别可以创建
指定长度或形状的全0或全1数组。 empty 可以创建一个没有任何具体值的数组(未知数据,要自己初始化)。
要用这些方法创建多维数组,只需传入一个表示形状的元组即可:

zeros = np.zeros((2, 3), str)
print(zeros)

输出:
[['' '' '']
['' '' '']]


arange是Python内置函数range的数组版:
np.arange(10) # 生成一维数组



由于NumPy关注的是数值计算,因此,如果没有
特别指定,数据类型基本都是float64(浮点数),
如果指定类型,使用 np.类型, 比如: zeros = np.zeros((2, 3), np.int)

列出了一些数组创建函数:
array 将输入的数据转成 ndarray
asarray
ones, onse_like
zeros, zeros_like
empty, empty_like
full, full_like
eye, identity

np 中的数据类型:
int8 uint8
int16 uint16
int32 uint32
int64 uint64
float16
float32
float64
float128
complex64 complex128 complex256
bool
object
string_长度 string_10
unicode_长度 unicode_10

数据类型转换: astype
arr = [0.1,1,2,3,4]
narr = np.array(arr)
astype = narr.astype(np.int32) # float64 转成 int32
print(astype, astype.dtype) # 类型强制,精度丢失,不会报错和警告

字符串的数字变成 float类型也可以, 如果发生无法转换的,error 抛出来
================================================================================



>> 目录 << 


 

分享
收藏
点赞人
举报
文章标签
评论列表

推荐

暂无推荐