data1 = [6,7.5,8,0,1]
arr1 = np.array(data1)
arr1
data2 = [[1,2,3,4], [5,6,7,8]]
arr2 = np.array(data2)
arr2
arr2.ndim#查看这个数组有几维
arr2.shape#数组的形状
arr1.dtype
arr2.dtype
#np.array会尝试为新建的数组腿短出一个合适的数据类型
np.zeros(10)#创建一个都为0的数组 这里的10是数组的形状
np.zeros((3,6)) #创建一个 3*6的二维数组
np.empty((2,3,2))#empty表示一个没有任何具体值的数组,这里是一个 2*3*2的三维数组
#empty只分配内存空间但是不填充任何值
np.ones((4,1))#和zeros相似,只不过这里数组的具体的值是1
np.empty((2,3))
np.empty((2,3,2))
np.empty((2,3,2,2))
np.arange(15) #类似与Python内置的array但是返回值是一个ndarray而不是一个列表
range(15) #range返回值是一个列表
#ndarray的数据类型
arr1 = np.array([1,2,3],dtype=np.float64) #将这块内存解释为指定的数据类型
arr2 = np.array([1,2,3],dtype=np.int32)
arr1.dtype
arr2.dtype
#使用 astype方法转换dtype
arr = np.array([1,2,3,4,5])
arr.dtype
float_arr = arr.astype(np.float64)
float_arr.dtype
arr = np.array([3.7,-1.2,-2.6,0.5,12.9,10.1])
arr
arr.astype(np.int32)#浮点转向整形时候只保留整数部分
numeric_strings = np.array(['1.25','-9.6','42'],dtype=np.string_)
numeric_strings.astype(float) #如果字符串里面表示的全部都是数字也可以直接转换为数值的形式
int_array =np.arange(10)
calibers = np.array([.22,.270,.357,.380,.44,.50],dtype=np.float64)
int_array.astype(calibers.dtype)
利用Python数据分析:Numpy基础(一)
最新推荐文章于 2022-12-20 18:27:44 发布