机器学习——数据科学包(一)

机器学习——基础算法(一)

一、numpy &pandas有什么用

   用于Python对数据进行分析,用矩阵进行数据计算

二、numpy&pandas的安装

在这里插入图片描述
在这里插入图片描述

三、numpy属性

import numpy as np

array = np.array([[1,2,3],
                  [2,3,4]])

print(array)
print('number of dim:',array.ndim)
print('shape:',array.shape)
print('size:',array.size)

在这里插入图片描述

四、numpy的创建array

import numpy as np

a = np.array([2,23,4])
print(a)

在这里插入图片描述

import numpy as np

a = np.array([2,23,4],dtype=np.float)
print(a.dtype)

在这里插入图片描述

import numpy as np

a = np.array([[2,23,4],
             [2,32,4]])
print(a)

在这里插入图片描述

import numpy as np

a = np.zeros((3,4))
print(a)

在这里插入图片描述

import numpy as np

a = np.empty((3,4))
print(a)

在这里插入图片描述

import numpy as np

a = np.arange(12).reshape((3,4))
print(a)

在这里插入图片描述

import numpy as np

a = np.linspace(1,10,5)
print(a)

在这里插入图片描述

import numpy as np

a = np.linspace(1,10,6).reshape((2,3))
print(a)

在这里插入图片描述

五、numpy的基础运算

(一)减法(加法类似)

import numpy as np
a = np.array([10,20,30,40])
b = np.arange(4)

print(a,b)
c = a-b
print(c)

在这里插入图片描述

(二)平方

import numpy as np
a = np.array([10,20,30,40])
b = np.arange(4)

print(a,b)
c = b**2
print(c)

在这里插入图片描述

(三)三角函数运算

import numpy as np
a = np.array([10,20,30,40])
b = np.arange(4)

c = 10*np.sin(a)
print(c)

在这里插入图片描述

(四)判断列表中的大小范围

import numpy as np
a = np.array([10,20,30,40])
b = np.arange(4)

print(b)
print(b<3)

在这里插入图片描述

(五)矩阵的点乘运算和*运算

import numpy as np
a = np.array([[1,1],
             [0,1]])
b = np.arange(4).reshape((2,2))

c = a*b
c_dot = np.dot(a,b)
c_dot_2 = a.dot(b)

print(c)
print(c_dot)
print(c_dot_2)

在这里插入图片描述

(六)随机矩阵

import numpy as np
a = np.random.random((2,4))

print(a)
print(np.sum(a))
print(np.min(a))
print(np.max(a))

在这里插入图片描述

 注:所有运算情况均适用,axis=1进行行运算,axis=0进行列运算
import numpy as np
a = np.random.random((2,4))

print(a)
print(np.sum(a,axis=1))
print(np.min(a,axis=0))
print(np.max(a,axis=1))

在这里插入图片描述

(七)求矩阵最大值和最小值的索引

import numpy as np
A = np.arange(2,14).reshape((3,4))

print(np.argmin(A))
print(np.argmax(A))

在这里插入图片描述

(八)求平均值,中值,累加和累减

import numpy as np
A = np.arange(14,2,-1).reshape((3,4))

print(A)
print(np.mean(A))
print(A.mean())
print(np.average(A))
print(np.median(A))
print(np.cumsum(A)) #第一个数为原矩阵的值,第二个为原矩阵的第一个和第二个值相加,类推
print(np.diff(A))
print(np.nonzero(A))
print(np.sort(A))# 按照逐行进行排序
print(np.transpose(A))#矩阵的行变成列列变成行
print((A.T).dot(A))
print(np.clip(A,5,9))#所有小于5的数变成5,所有大于9的数变成9,中间数保持不变

![在这里插入图片描述](https://img-blog.csdnimg.cn/20191022155536375.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNTE

(九)numpy的索引运算

(1)打印指定位置值
import  numpy as np

A = np.arange(3,15).reshape((3,4))
print(A)
print(A[2])
print(A[2][1])
print(A[2,:])#第二行的所有数
print(A[:,1])#第一列的所有数
print(A[1,1:2])
print(A[1,1:3])

在这里插入图片描述

(2)迭代每一行和列
import  numpy as np

A = np.arange(3,15).reshape((3,4))
print(A)

for row in A: #迭代列
    print(row)

print(A.T)# 迭代列
for column in A.T:
    print(column)

在这里插入图片描述

import  numpy as np

A = np.arange(3,15).reshape((3,4))
print(A)
print(A.flatten())

for item in A.flat:
    print(item)

在这里插入图片描述

(十)array合并

import  numpy as np

A = np.array([1,1,1])
B = np.array([2,2,2])

C = np.vstack((A,B))  #上下合并
D = np.hstack((A,B))  #左右合并
print(C)
print(D)
print(A.shape,C.shape)
print(A.shape,D.shape)

在这里插入图片描述

(十一)横向的矩阵变成纵向的矩阵

import  numpy as np

A = np.array([1,1,1])[:,np.newaxis]
B = np.array([2,2,2])[:,np.newaxis]

C = np.vstack((A,B))  #上下合并
D = np.hstack((A,B))  #左右合并
print(C)
print(D)
print(A.shape,C.shape)
print(A.shape,D.shape)

在这里插入图片描述
做多个array合并

import  numpy as np

A = np.array([1,1,1])[:,np.newaxis]
B = np.array([2,2,2])[:,np.newaxis]

C = np.concatenate((A,B,B,A),axis=0) #纵向合并
D = np.concatenate((A,B,B,A),axis=1) #横向合并
print(C)
print(D)

在这里插入图片描述

(十二)array的分割

import  numpy as np

A = np.arange(12).reshape((3,4))
print(A)

print(np.split(A,2,axis = 1))#纵向分割成2块
print(np.split(A,3,axis = 0))#横向分割成3块
print(np.array_split(A,3,axis = 1))#横向分割成3块,且每块可以不等
print(np.vsplit(A,3))#横向
print(np.hsplit(A,2))#纵向

在这里插入图片描述

(十三)copy&deep copy

(1)copy

通过等号赋值,a和b的存储位置相同,改变任意变量都会影响其他变量。可以通过is 语句判断
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)deep copy:a和b赋值,但不关联

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值