numpy不会经常读数据,一般读数据用Pandas,一般处理数值型数据
1.读取本地文件
CSV:逗号分隔值文件,unpack转置
2.numpy中的索引和切片
取行 t[numer] 或 t[1,:],取连续多行 t[number:] 取不连续的多行 t[[num1,num2,...]]
取列 t[:,num] 取连续多列 t[:,num:] 取不连续的多列 t[:,[num1,num2...]]
取多行多列,ex第三行第四列 t[2,3]
ex 取相交点的位置 t【2:5,1:4】取得是三到五行,二到四列交叉点的值
取多个不相邻的点 如 t [[0,num1.num2 ...] , [0,num3,num4...]] 选的数是(0,0)(num1,num3)(num2,num4)这三个点
3.numpy其他索引方式
·np.where(条件,赋值1,赋值2)条件返回的是布尔值
函数名.clip(值1,值2) 根据函数判断条件进行赋值 小于值1的换为值1,大于值2的换成值2
4.数组的拼接
竖直拼接 np.vstack 水平拼接 np.hstack
行交换 T[[行1,行2],:] 列交换 T[:,[列1,列2]]
练习: 将两个国家的信息放在一起比较
获取最大/最小值的位置得方法 np.argmax(t,axis = 0) np.argmin(t,axis = 1)
创建一个全为0的数组 np.zeros((num1,num2)) 全为1的数组np.ones((num1,num2))
创建一个对角线为1的正方形数组(方阵) np.eye(Num)
a = b 完全不复制,a和b相互影响 a = b[:] 视图的操作,一种切片,会创建新的对象a,但是a的数据完全由B保管,他们的数据变化是一致的
a = b.copy() 复制,a跟b不相互影响
行和 np.sum(t,axis = 0) 列和np.sum(t,axis = 1) nan与任何值计算都是nan
5.Numpy常用的统计函数
求和 t.sum 均值 t.mean 中值 t.median 最大值t.max 最小值t.min 极值t.ptp 标准差 t.std
6.numpy数据填充练习
总结: