我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【数模之数据分析-1】

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【数模之数据分析-1】

数据分析之Numpy


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

Array数组:

# 对于ndarray结构老说,里面所有的 元素必须是同一类型的,如果不是的话,会自动的向下进行转换。import numpy as nplxw = [1, 2, 3, 4, 5]lxw2 = np.array([1, 2, 3, 4, 5])print(lxw2)print(type(lxw2))lxw3 = lxw2 + 1print(lxw2)print(lxw3)print(lxw3+lxw2)print(lxw3[3])print(lxw3.shape)lxw4 = np.array([    [1, 3, 5],    [2, 4, 6]])print(lxw4)# 类型print(lxw4.dtype)print(lxw4.itemsize)# 数组个数print(lxw4.size)# 维度print(lxw4.ndim)# 以0填充lxw4.fill(0)print(lxw4)

相关程序运行如下:

[1 2 3 4 5][1 2 3 4 5][2 3 4 5 6][ 3  5  7  9 11]5(5,)[[1 3 5] [2 4 6]]int32462[[0 0 0] [0 0 0]]

索引与切片:与python大同小异,还是从0开始

lxw_array = np.array(lxw)print(lxw_array[0])print(lxw_array[1:4])print(lxw_array[-3:])# 矩阵格式【即多维的形式】lxw_array2 = np.array([    [9, 8, 7],    [6, 5, 4],    [3, 2, 1]])print(lxw_array2)# 几行几列print(lxw_array2.shape)# 数组个数print(lxw_array2.size)# 维度几维print(lxw_array2.ndim)# 取矩阵行print(lxw_array2[1])# 取矩阵列print(lxw_array2[:, 1])# 取第二行的第一二个print(lxw_array2[1, 0:2])# 修改矩阵最中间的数lxw_array2[1, 1] = 20print(lxw_array2)# 复制矩阵lxw_array3 = lxw_array2.copy()print(lxw_array3)# 修改复制矩阵最中间的数lxw_array3[1, 1] = 52print(lxw_array3)gs = np.arange(0, 100, 10)print(gs)mask = np.array([0, 1, 1, 0, 0, 1, 0, 1, 0, 1], dtype=bool)print(mask)print(gs[mask])ran_arr = np.random.rand(8)print(ran_arr)mask = ran_arr > 0.5print(mask)sz = np.array([12, 23, 34, 45, 56])print(sz > 36)# 大于该数的为True,反之,则是Falseprint(np.where(sz > 36))# 字节个数print(sz.nbytes)# 整数,小数,字符同时存在sz2 = np.array([1, 23, 6.2, 'str'], dtype=np.object)print(sz2)print(sz2*2)# 转化为浮点型sz3 = np.asarray(sz, dtype=np.float32)print(sz3)# 法2(上)sz3 = sz.astype(np.float32)print(sz3)

相关程序运行如下:

1[2 3 4][3 4 5][[9 8 7] [6 5 4] [3 2 1]](3, 3)92[6 5 4][8 5 2][6 5][[ 9  8  7] [ 6 20  4] [ 3  2  1]][[ 9  8  7] [ 6 20  4] [ 3  2  1]][[ 9  8  7] [ 6 52  4] [ 3  2  1]][ 0 10 20 30 40 50 60 70 80 90][False  True  True False False  True False  True False  True][10 20 50 70 90][0.07407331 0.46338347 0.50051622 0.89459322 0.02400678 0.10385683 0.78564635 0.37998512][False False  True  True False False  True False][False False False  True  True](array([3, 4], dtype=int32),)20[1 23 6.2 'str'][2 46 12.4 'strstr'][12. 23. 34. 45. 56.][12. 23. 34. 45. 56.]

数值运算–array数组

szjs = np.array([    [5, 2, 0],    [1, 3, 2]])# 数组内全数相加print(np.sum(szjs))# 指定要进行的操作是沿着什么轴(维度)# 列加:print(np.sum(szjs, axis=0))# 法二(同上):lj = szjs.sum(axis=0)print(lj)# 行加:print(np.sum(szjs, axis=1))# 法二(同上):hj = szjs.sum(axis=1)print(hj)# 列乘:lc = szjs.prod(axis=0)print(lc)# 行乘:hc = szjs.prod(axis=1)print(hc)# szjs当中最小值:zxz = szjs.min()print(zxz)# 哪个位置的数最小argx = szjs.argmin()print(argx)# 列最小值:lzxz = szjs.min(axis=0)print(lzxz)# 行最小值:hzxz = szjs.min(axis=1)print(hzxz)# szjs当中最大值zdz = szjs.max()print(zdz)# 哪个位置的数最大argd = szjs.argmax()print(argd)# 列最大值:lzdz = szjs.max(axis=0)print(lzdz)# 行最大值:hzdz = szjs.max(axis=1)print(hzdz)largd = szjs.argmax(axis=0)print(largd)hargd = szjs.argmax(axis=1)print(hargd)largx = szjs.argmin(axis=0)print(largx)largx = szjs.argmin(axis=1)print(largx)# 均值:jz = szjs.mean()print(jz)# 列均值:ljz = szjs.mean(axis=0)print(ljz)# 行均值:hjz = szjs.mean(axis=1)print(hjz)# 标准差:bzc = szjs.std()print(bzc)# 列标准差:lbzc = szjs.std(axis=0)print(lbzc)# 行标准差:hbzc = szjs.std(axis=1)print(hbzc)# 方差:fc = szjs.var()print(fc)# 列方差lfc = szjs.var(axis=0)print(lfc)# 行方差hfc = szjs.var(axis=1)print(hfc)# 限制,大于该数的用指定最大数表示,反之也一样【在区间内的不用管】xz = szjs.clip(0, 3)print(xz)# 小数四舍五入成整数xsz = np.array([2.6, 1.46, 8.41])print(xsz.round())# 四舍五入中指定小数点print(xsz.round(decimals=1))

相关程序运行如下:

13[6 5 2][6 5 2][7 6][7 6][5 6 0][0 6]02[1 2 0][0 1]50[5 3 2][5 3][0 1 1][0 1][1 0 0][2 0]2.1666666666666665[3.  2.5 1. ][2.33333333 2.        ]1.5723301886761007[2.  0.5 1. ][2.05480467 0.81649658]2.4722222222222223[4.   0.25 1.  ][4.22222222 0.66666667][[3 2 0] [1 3 2]][3. 1. 8.][2.6 1.5 8.4]

排序操作:

pxsz = np.array([    [3, 8, 2],    [9, 4, 1],    [3, 9, 1]])# 默认axis=1排序print(np.sort(pxsz))print(np.sort(pxsz, axis=0))# 行逆转print(np.sort(pxsz)[::-1])# 排序前的位置wz = np.argsort(pxsz)print(wz)# 插数pxarr = np.linspace(0, 10, 8)print(pxarr)xszz = np.array([5.2, 6.6, 8.9])print(np.searchsorted(pxarr, xszz))

相关程序运行如下:

[[2 3 8] [1 4 9] [1 3 9]][[3 4 1] [3 8 1] [9 9 2]][[1 3 9] [1 4 9] [2 3 8]][[2 0 1] [2 1 0] [2 0 1]][ 0.          1.42857143  2.85714286  4.28571429  5.71428571  7.14285714  8.57142857 10.        ][4 5 7]

数组形状操作

larr = np.arange(10)print(larr)print(larr.shape)larr.shape = 2, 5print(larr)# 仔细感受其间的区别:res = larr.reshape(1, 10)print(res)print(res.shape)res2 = res[np.newaxis, :]print(res2)print(res2.shape)res3 = res[:, np.newaxis]print(res3)print(res3.shape)res4 = res[:, np.newaxis, np.newaxis]print(res4)print(res4.shape)# 压缩:res5 = res4.squeeze()print(res5)# 转置列行:print(larr.transpose())# 法二(同上):print(larr.T)

相关程序运行如下:

[0 1 2 3 4 5 6 7 8 9](10,)[[0 1 2 3 4] [5 6 7 8 9]][[0 1 2 3 4 5 6 7 8 9]](1, 10)[[[0 1 2 3 4 5 6 7 8 9]]](1, 1, 10)[[[0 1 2 3 4 5 6 7 8 9]]](1, 1, 10)[[[[0 1 2 3 4 5 6 7 8 9]]]](1, 1, 1, 10)[0 1 2 3 4 5 6 7 8 9][[0 5] [1 6] [2 7] [3 8] [4 9]][[0 5] [1 6] [2 7] [3 8] [4 9]]

数组的连接:

lj1 = np.array([    [213, 324, 543],    [23, 65, 865]])lj2 = np.array([    [343, 654, 234],    [54, 75, 54]])# 列拼接:llj = np.concatenate((lj1, lj2))print(llj)llj2 = np.vstack((lj1, lj2))print(llj2)# 行拼接:hlj = np.concatenate((lj1, lj2), axis=1)print(hlj)hlj2 = np.hstack((lj1, lj2))print(hlj2)# 拉平:lp = hlj.flatten()print(lp)lp2 = llj.ravel()print(lp2)

相关程序运行如下:

[[213 324 543] [ 23  65 865] [343 654 234] [ 54  75  54]][[213 324 543] [ 23  65 865] [343 654 234] [ 54  75  54]][[213 324 543 343 654 234] [ 23  65 865  54  75  54]][[213 324 543 343 654 234] [ 23  65 865  54  75  54]][213 324 543 343 654 234  23  65 865  54  75  54][213 324 543  23  65 865 343 654 234  54  75  54]

数组生成–构造出来一个数组

sz1 = np.array([5, 2, 0])print(sz1)sz2 = np.arange(10)print(sz2)sz3 = np.arange(2, 20, 2)print(sz3)sz4 = np.arange(2, 20, 2, dtype=np.float32)print(sz4)# 区间内构造n个数:gzs = np.linspace(0, 8, 20)print(gzs)# 默认是以10为底的s = np.logspace(0, 1, 5)print(s)x = np.linspace(-10, 10, 5)print(x)y = np.linspace(-10, 10, 5)print(y)# 构造网格:x, y = np.meshgrid(x, y)print(x)print(y)hxl = np.r_[0:10:1]print(hxl)lxl = np.c_[0:10:1]print(lxl)# 更常用的zeros、onesoo = np.zeros(3)print(oo)oo0 = np.zeros((3, 3))print(oo0)oo1 = np.ones((3, 3))print(oo1)oo8 = np.ones((3, 3)) * 8print(oo8)oo5 = np.ones((3, 3), dtype=np.float32)print(oo5)k = np.empty(6)print(k)k.fill(1)print(k)o = np.ones_like(sz1)print(o)# 构造矩阵:print(np.identity(5))

相关程序运行如下:

[5 2 0][0 1 2 3 4 5 6 7 8 9][ 2  4  6  8 10 12 14 16 18][ 2.  4.  6.  8. 10. 12. 14. 16. 18.][0.         0.42105263 0.84210526 1.26315789 1.68421053 2.10526316 2.52631579 2.94736842 3.36842105 3.78947368 4.21052632 4.63157895 5.05263158 5.47368421 5.89473684 6.31578947 6.73684211 7.15789474 7.57894737 8.        ][ 1.          1.77827941  3.16227766  5.62341325 10.        ][-10.  -5.   0.   5.  10.][-10.  -5.   0.   5.  10.][[-10.  -5.   0.   5.  10.] [-10.  -5.   0.   5.  10.] [-10.  -5.   0.   5.  10.] [-10.  -5.   0.   5.  10.] [-10.  -5.   0.   5.  10.]][[-10. -10. -10. -10. -10.] [ -5.  -5.  -5.  -5.  -5.] [  0.   0.   0.   0.   0.] [  5.   5.   5.   5.   5.] [ 10.  10.  10.  10.  10.]][0 1 2 3 4 5 6 7 8 9][[0] [1] [2] [3] [4] [5] [6] [7] [8] [9]][0. 0. 0.][[0. 0. 0.] [0. 0. 0.] [0. 0. 0.]][[1. 1. 1.] [1. 1. 1.] [1. 1. 1.]][[8. 8. 8.] [8. 8. 8.] [8. 8. 8.]][[1. 1. 1.] [1. 1. 1.] [1. 1. 1.]][2.33333333 2.33333333 2.33333333 2.         2.         2.        ][1. 1. 1. 1. 1. 1.][1 1 1][[1. 0. 0. 0. 0.] [0. 1. 0. 0. 0.] [0. 0. 1. 0. 0.] [0. 0. 0. 1. 0.] [0. 0. 0. 0. 1.]]进程已结束,退出代码为 0

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

一切都在变好的路上

1、熬夜

很多人以为熬夜只是影响作息,伤害身体。
事实上,它也在慢慢偷走你的时间。
为什么周末的时间过得这么快,
这是因为你昨晚熬夜,导致起床晚,错过了美好的早晨。
【醒来的时候都快中午了】

2、没有节制地书刷手机

现代人已经离不开手机了。路上、候车、吃饭,无论男女老少,每个人都随处可见地刷着手机。
短视频真的很精彩,在你欲罢不能时,已有大把时间从你手中溜走了。

3、相对于刷短视频

沉迷于游戏更可怕。
因为丢掉的不止是时间,
它可能已经同时影响到了你的工作或学习。

4、不断地缅怀过去

纠结过去的某件错事,
在脑海中一遍遍地批判自己。
时间长了,思想负担。
像滚雪球一样越滚越大。
要尝试放过自己,
别用现在的标准来要求以前的自己,
过去的就让它过去吧,
每一天都是崭新的,
做人就应该要往前看。

5、反复拖延

今天的事推明天,明天的推到后天。
72小时定律告诉我们,
当你决定做一件事,
如果72小时内没有做,
那你做这件事的几率趋近于零。
拖延症是破坏我们计划的最大敌人,
但实际上它又是一场与自己的博弈。
所以我们需要培养自己的执行力,
每一次果断,每一次行动,
都是打败那个在干扰你的敌人。

6、不懂得拒绝

这类人有一个明显得特征,
不知道自己时间的宝贵,
对别人有求必应。
平时帮别人做一些小事,
结果往往不但没有落得好名声,
还费力不讨好。

7、为了合群而合群

盲目地区融入不适合自己的圈子。
看似成群结队,受人欢迎了,
其实是在浪费时间,
放弃提升自己的机会。
千万别等着别人过上理想生活时,
才后悔 为什么没有早点努力!

8、尽量“解决”以上“问题”…


每日一言:

把寄予他人的希望收回来放在自己身上,倒也温馨。


持续更新中…

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

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

来源地址:https://blog.csdn.net/m0_66318554/article/details/126556279

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【数模之数据分析-1】

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

数据分析之pandas模块

一、Series  类似于一位数组的对象,第一个参数为数据,第二个参数为索引(索引可以不指定,就默认用隐式索引)Series(data=np.random.randint(1,50,(10,)))Series(data=[1,2,3],in
2023-01-30

python数据分析系列(1)

目录 python基础 python语言基础 Ipython的一些特性 Python语法基础 Python控制流 lambda表达式
2023-01-31

数据分析之matplotlib.pypl

首先都得导模块。import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom pandas import Series,DataFrame  一、绘制单线图
2023-01-30

python数据分析之pandas数据选

Pandas是作为Python数据分析著名的工具包,提供了多种数据选取的方法,方便实用。本文主要介绍Pandas的几种数据选取的方法。  Pandas中,数据主要保存为Dataframe和Series是数据结构,这两种数据结构数据选取的方式
2023-01-30

Python数据分析之pandas读取数据

一、三种数据文件的读取二、csv、tsv、txt 文件读取 1)CSV文件读取: 语法格式:pandas.read_csv(文件路径) CSV文件内容如下:import pandas as pd file_path = "e:\\panda
2022-06-02

数据分析利器之Pandas

Pandas是一个python的开源库,它基于Numpy,提供了多种高性能且易于使用的数据结构。Pandas最初被用作金融数据分析工具而开发,由于它有着强大的功能,目前广泛应用于数据分析、机器学习以及量化投资等。下面来跟随作者一起认识下Pa
2023-06-02

数据分析之Pandas VS SQL!

编辑:zone来源:数据管道作者:艾德宝器AbstractPandas是一个开源的Python数据分析库,结合 NumPy 和 Matplotlib 类库,可以在内存中进行高性能的数据清洗、转换、分析及可视化工作。对于数据开发工程师或分析师
2023-06-02

Python数据分析:数据驱动成功之路

数据分析是信息时代的关键技能,而 Python 已成为数据分析领域不可或缺的工具。Python 提供了广泛的库和工具,使数据探索、建模和可视化变得容易,为数据驱动决策和成功铺平了道路。
Python数据分析:数据驱动成功之路
2024-02-17

Python数据分析库之pandas,你

写这个系列背后的故事咦,面试系列的把基础部分都写完啦,哈哈答,接下来要弄啥嘞~pandas吧外国人开发的翻译成汉语叫 熊猫厉害厉害,很接地气一个基于numpy的库干啥的?做数据分析用的而数据分析是python体系下一个非常庞大的分支厉害到,
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录