Python实现数据分析(三)NumPy

NumPy

一、numpy

关键词:开源 数据计算扩展

功能:ndarray 多维操作 线性代数

官网https://numpy.org/

介绍(选自-百度百科):

NumPy(Numerical Python)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。

代码(操作函数)(一):

#encoding=utf-8
import numpy as np
"""
numpy的Array数组操作
"""
def main():
    list = [[1,3,5],[2,4,6]]
    print(type(list))
    npList = np.array(list)
    print(type(npList))
    print(npList.shape)# 打印numpy数组的大小
    print(npList.ndim)# 打印numpy数组的纬度
    print(npList.dtype)# 打印numpy数组元素的数据类型
    print(npList.itemsize)# 打印numpy数组元素的大小
    print(npList.size)# 打印numpy数组的大小(元素个数)
    print(np.zeros([2,4]))# 打印两行四列的全零数组(用于初始化)
    print(np.ones([3,5]))# 打印三行五列的全1数组
    print('random:\n',np.random.rand(2,4))# 打印2行4列的随机数(0-1)
    print(np.random.randint(1, 3,3))# 随机生成1-3(不包括3)的整数,生成3个
    print(np.random.randn())# 生成一个标准正态分布的随机数
    print(np.random.choice([10, 20, 30]))# 打印从10,20,30里面选的随机数
   # print(np.random.beta(1, 10, 100))# numpy生成一个1-10之间100个符合beta分布的元素
    print(np.arange(1, 11).reshape(2, 5))# 生成一个等差数列,1-10的元素,2行五列
    listNum = np.arange(1, 11).reshape(2, 5)
    print(np.exp(listNum))# 对1-10求自然对数e为底的数
    print(np.sqrt(listNum))# 对1-10开根号
    print(np.log(listNum))# 对1-10求对数
    listNum2 = np.array([[1,2,3],[4,5,6]])
    print(listNum2.sum(axis=1))# 求外圈元素之和
    print(listNum2.max(axis=1))# 求外圈元素最大值
    print(listNum2.min(axis=1))# 求外圈元素最小值
    list1 = np.array([1,2,3,4])
    list2 = np.array([10,20,30,40])
    print(np.concatenate((list1, list2),axis = 0))# 列表追加元素
    print(np.vstack((list1, list2)))# 垂直追加元素
    print(np.hstack((list1, list2)))# 水平追加元素
    print(np.split(list1, 2))# 将list1分成两份
main()

代码(操作函数)(二):

import numpy as np
from numpy.linalg import *
"""
矩阵操作与线性方程组
"""
print(np.eye(3))# 生成对角阵 返回的是一个二维2的数组(N,M),对角线的地方为1,其余的地方为0
lst = np.array([[1,2],[3,4]])
print('Inv:')
print(inv(lst))# 求逆
print('T:')
print(lst.transpose())# 求倒置
print('Det:')
print(det(lst))# 特征值
print('Eig:')
print(eig(lst))# 特征向量
y = np.array([[5],[7]])
print('Solve:')
print(solve(lst,y))# 求解lst/y
print('Coef:')
print(np.corrcoef([1,0,1],[0,2,1]))# Person相关系数
print('Poly:')
print(np.poly1d([2,1,3]))# 生成一元多次函数

总结:

Numpy主要是用来做数值计算,需要用的时候可以直接百度用法,不需要记住所有函数

【git地址】https://gitee.com/sienhao/data-analysis-python.git
在这里插入图片描述
关注公众号,获取更多资讯!

(别忘记给个三连!!!)

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页