程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

关注本站官方公众号:程序员总部,领取三大福利!
福利一:python和前端辅导
福利二:进程序员交流微信群,专属于程序员的圈子
福利三:领取全套零基础视频教程(python,java,前端,php)

  价值13000svip视频教程,python大神匠心打造,零基础python开发工程师视频教程全套,基础+进阶+项目实战,包含课件和源码

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2021-10(12)

2021-11(13)

【Numpy-矩阵库~python】

发布于2022-08-11 20:22     阅读(803)     评论(0)     点赞(5)     收藏(3)



个人昵称:lxw-pro
个人主页:欢迎关注 我的主页
个人感悟: “失败乃成功之母”,这是不变的道理,在失败中总结,在失败中成长,才能成为IT界的一代宗师。

# -*- coding = utf-8 -*-
# @Time : 2022/8/7 14:30
# @Author : lxw_pro
# @File : NumPy 矩阵库.py
# @Software : PyCharm

numpy学习(续)

NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对象。

转置矩阵

import numpy as np

lxw = np.arange(16).reshape(4, 4)
print("原数组为:\n", lxw)

print("转置过的数组为:\n", lxw.T)

matlib.empty()

matlib.empty() 函数返回一个新的矩阵

import numpy.matlib

kk = np.matlib.empty((3, 3))    # 填充为随机数据
print(kk)

numpy.matlib.zeros()

numpy.matlib.zeros() 函数创建一个以 0 填充的矩阵

ll = np.matlib.zeros((3, 3))
print(ll)

numpy.matlib.ones()

numpy.matlib.ones()函数创建一个以 1 填充的矩阵

yy = np.matlib.ones((3, 3))
print(yy)

numpy.matlib.eye()

numpy.matlib.eye() 函数返回一个矩阵,对角线元素为 1,其他位置为零

dd = np.matlib.eye(n=3, M=4, k=0, dtype=float)
print(dd)

numpy.matlib.rand()

numpy.matlib.rand() 函数创建一个给定大小的矩阵,数据是随机填充的

sj = np.matlib.rand((3, 3))
print(sj)

二维矩阵

e = np.matrix('1, 2;3, 4')
print(e)

n维数组

r = np.asarray(e)
print(r)

以上所有程序对应运行结果如下:

原数组为:
 [[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]
转置过的数组为:
 [[ 0  4  8 12]
 [ 1  5  9 13]
 [ 2  6 10 14]
 [ 3  7 11 15]]
 
[[           nan 0.0000000e+000 1.1581509e-311]
 [2.0236929e-320 0.0000000e+000 0.0000000e+000]
 [0.0000000e+000 0.0000000e+000 0.0000000e+000]]
 
[[0. 0. 0.]
 [0. 0. 0.]
 [0. 0. 0.]]
 
[[1. 1. 1.]
 [1. 1. 1.]
 [1. 1. 1.]]
 
[[1. 0. 0. 0.]
 [0. 1. 0. 0.]
 [0. 0. 1. 0.]]
 
[[0.39836727 0.16983388 0.91118039]
 [0.77283047 0.24608713 0.72451454]
 [0.32447712 0.21523051 0.4374776 ]]
 
[[1 2]
 [3 4]]
 
[[1 2]
 [3 4]]

—————————————————————————————————

pandas 每日一练:

# -*- coding = utf-8 -*-
# @Time : 2022/8/7 19:48
# @Author : lxw_pro
# @File : pandas-12 练习.py
# @Software : PyCharm

import pandas as pd
import matplotlib.pyplot as plt

lxw = pd.read_excel("site.xlsx")
print(lxw)

运行结果如下:

     Unnamed: 0  Unnamed: 0.1   create_dt  ...   yye  sku_cost_prc     lrl
0             0             1  2016-11-30  ...   8.8          6.77  30.00%
1             1             2  2016-11-30  ...   7.5          5.77  30.00%
2             2             3  2016-11-30  ...   5.0          3.85  30.00%
3             3             4  2016-11-30  ...  19.6          7.54  30.00%
4             4             5  2016-12-02  ...  13.5         10.38  30.00%
..          ...           ...         ...  ...   ...           ...     ...
751         751           752  2016-12-31  ...   1.0          0.77  30.00%
752         752           753  2016-12-31  ...   2.0          1.54  30.00%
753         753           754  2016-12-31  ...   1.0          0.77  30.00%
754         754           755  2016-12-31  ...   7.6          2.92  30.00%
755         755           756  2016-12-31  ...   3.3          2.54  30.00%
[756 rows x 8 columns]

71、以5个数据作为一个数据滑动窗口,计算这五个数据总和(sku_cost_prc)

zh = lxw['sku_cost_prc'].rolling(5).sum()
print(zh)

运行结果如下:

0        NaN
1        NaN
2        NaN
3        NaN
4      34.31
       ...  
751    10.89
752    10.51
753     8.36
754     9.90
755     8.54
Name: sku_cost_prc, Length: 756, dtype: float64

72、将sku_cost_prc 5日均线、20日均线与原始数据绘制在同一个圈上

lxw['sku_cost_prc'].plot()
lxw['sku_cost_prc'].rolling(5).mean().plot()
lxw['sku_cost_prc'].rolling(20).mean().plot()

plt.show()

运行效果如下:

在这里插入图片描述


73、将数据往后移动5天

wh = lxw.shift(5)
print(wh)

运行结果如下:

     Unnamed: 0  Unnamed: 0.1   create_dt  ...   yye  sku_cost_prc     lrl
0           NaN           NaN         NaN  ...   NaN           NaN     NaN
1           NaN           NaN         NaN  ...   NaN           NaN     NaN
2           NaN           NaN         NaN  ...   NaN           NaN     NaN
3           NaN           NaN         NaN  ...   NaN           NaN     NaN
4           NaN           NaN         NaN  ...   NaN           NaN     NaN
..          ...           ...         ...  ...   ...           ...     ...
751       746.0         747.0  2016-12-31  ...  20.0          2.00  40.00%
752       747.0         748.0  2016-12-31  ...   5.0          1.92  30.00%
753       748.0         749.0  2016-12-31  ...   3.8          2.92  30.00%
754       749.0         750.0  2016-12-31  ...   1.8          1.38  30.00%
755       750.0         751.0  2016-12-31  ...   3.9          3.90   2.56%
[756 rows x 8 columns]

74、将数据往前移动5天

wq = lxw.shift(-5)
print(wq)

运行结果如下:

     Unnamed: 0  Unnamed: 0.1   create_dt  ...   yye  sku_cost_prc     lrl
0           5.0           6.0  2016-12-02  ...   3.9          3.00  30.00%
1           6.0           7.0         NaN  ...  10.8          8.31  30.00%
2           7.0           8.0  2016-12-02  ...  15.5         11.92  30.00%
3           8.0           9.0  2016-12-02  ...   3.5          2.69  30.00%
4           9.0          10.0  2016-12-02  ...   NaN          7.31  30.00%
..          ...           ...         ...  ...   ...           ...     ...
751         NaN           NaN         NaN  ...   NaN           NaN     NaN
752         NaN           NaN         NaN  ...   NaN           NaN     NaN
753         NaN           NaN         NaN  ...   NaN           NaN     NaN
754         NaN           NaN         NaN  ...   NaN           NaN     NaN
755         NaN           NaN         NaN  ...   NaN           NaN     NaN
[756 rows x 8 columns]

75、使用expanding函数计算sku_cost_prc的移动窗口均值

yj = lxw['sku_cost_prc'].expanding(min_periods=1).mean()
print(yj)

运行结果如下:

0      6.770000
1      6.270000
2      5.463333
3      5.982500
4      6.862000
         ...   
751    9.549093
752    9.538429
753    9.526769
754    9.517995
755    9.508740
Name: sku_cost_prc, Length: 756, dtype: float64

每日一言:

沉缅于虚幻的梦想,而忘记现实的生活,这是毫无意义的,千万记住。

人往往需要说很多话,然后才能够归至潜默。


持续更新中…

点赞,你的认可是我创作的动力
收藏,你的青睐是我努力的方向
评论,你的意见是我进步的财富
关注,你的喜欢是我长久的坚持
在这里插入图片描述

欢迎关注微信公众号程序人生6】,一起探讨学习哦!!!



所属网站分类: 技术文章 > 博客

作者:3434erer

链接:https://www.pythonheidong.com/blog/article/1659361/d3504b1da9deac76cc2e/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

5 0
收藏该文
已收藏

评论内容:(最多支持255个字符)