Numpy常用方法总结

1.创建数组
t1 = np.array(range(1,4))
t1 = np.array([1,2,3])
t1 = np.arange(1,4)

2.指定数据类型
(1)在创建数组时指定:
t1 = np.array([1,2,3],dtype=“int64”)
(2)在创建后修改数据类型:
t1.astype(“int64”)
常见数据类型如下:
序号 数据类型及描述

  1. bool 存储为一个字节的布尔值(真或假)
  2. int 默认整数,相当于 C 的long,通常为int32或int64
  3. intc 相当于 C 的int,通常为int32或int64
  4. intp 用于索引的整数,相当于 C 的size_t,通常为int32或int64
  5. int8 字节(-128 ~ 127)
  6. int16 16 位整数(-32768 ~ 32767)
  7. int32 32 位整数(-2147483648 ~ 2147483647)
  8. int64 64 位整数(-9223372036854775808 ~ 9223372036854775807)
  9. uint8 8 位无符号整数(0 ~ 255)
  10. uint16 16 位无符号整数(0 ~ 65535)
  11. uint32 32 位无符号整数(0 ~ 4294967295)
  12. uint64 64 位无符号整数(0 ~ 18446744073709551615)
  13. float_ float64的简写
  14. float16 半精度浮点:符号位,5 位指数,10 位尾数
  15. float32 单精度浮点:符号位,8 位指数,23 位尾数
  16. float64 双精度浮点:符号位,11 位指数,52 位尾数
  17. complex_ complex128的简写
  18. complex64 复数,由两个 32 位浮点表示(实部和虚部)
  19. complex128 复数,由两个 64 位浮点表示(实部和虚部)

3.显示和更改数据的行数和列数
例如(1)一维数组t1 = [1,2,3,4,5,6]
print(t1.shape), 返回[6,],表示是一个一维数组,且有六个元素
(2)二维数组t2=[[1,2,3], [4,5,6]]
print(t2.shape),返回[2,3],表示是一个二行三列的二维数组
(3)t2.reshape((3,2)) ,表示将t2从一个二行三列的二维数组转变成一个三行二列的二维数组

4.读取本地文件到numpy
np.loadtxt(“FilePath”,delimiter="",dtype="",skiprows=2)
其中参数1指定文件地址,参数2代表文件以什么形式分割(一般为逗号或者|),参数3指定数据的类型,参数4指定跳过文件的前两行不处理

5.切片操作
假设有这样一个二维数组t1 =[ [1,2,3],[4,5,6],[7,8,9]]
(1)选择连续的多行:t1[0:2,:],其中[]内逗号前是对行的操作,逗号后是对列的操作。该句表示选取t1的第1行和第二行
(2)选择连续的多列:t1[:,0:2]。该句表示选取t1的第一列和第二列

(3)选取不连续的行和列:t1[[0,2],[0,2]]
表示选取第一行和第三行,同时也是第一列和第三列的数据,取交集,则为取t1的1,3和7,9

6.常用统计函数
t1=[[1,2,3],[4,5,6],[7,8,9]]
(1)t1.sum(axis=0) 表示对0轴,即按列相加的求和函数
结果:array[12,15,18]
(2)t1.mean(axis=0) 按列取平均值
结果:array[4,5,6]
(3)t1.max() t1.min() 取整个数组的最大值和最小值
(4)mp.median(t1,axis=0) 按列取中值
结果:array[4,5,6]
(5)np.ptp(t1,axis=0) 计算列的极值,即列的最大值和最小值的差
结果:array[6,6,6]
(6)t1.std() 计算标准差,即数与平均数的离散程度

7.一些常用其他操作
(1)布尔索引:t1[t1>10] = 3 ,表示将数组中>10的数都改为3
(2)三元运算符:np.where(t1>10,20,0),表示将数组中>10的数改为20,<=10的数改为0
(3)裁剪:t1.clip(10,20),表示将数组中<10的数替换为10,>20的数替换为20
(4)转置矩阵(即将矩阵的行列相互颠倒,第一行的值写到第一列)
法一:t1.T
法二:t1.transpose()

你可能感兴趣的:(数据分析,矩阵,python,线性代数)