# pycharm中的.py文件
"""
jupyter的基本使用
一、运行程序快捷键
ctrl+Enter 运行并选中本单元
alt+Enter 运行并在下面插入新的一行
shift+Enter 运行并选中下一个单元,如果下面没有则创建并选中
二、插入新的代码单元
a above 在当前上面插入一行
b below 在当前下面插入一行
三、删除当前选中的代码单元
双击 d 键
四、代码提示
Tab键
五、查看函数的参数(API使用):光标需要在当前函数的参数括号里面
在pycharm中是ctrl+p
在jupyter中是shift+tab
六、魔法指令
程序运行计时:%time 函数名(参数) 注意:只作用于当前行的代码
%%time
# 如果要多行代码,计算运行时间,注意:%%time前面不能有其他注释或代码,否则系统报错,属于系统bug问题
函数名(参数)
函数名(参数)
%%timeit
# 单行或多行代码的平均运行时间
查看所有的魔法指令:%lsmagic
七、Markdown
选中当前代码单元,点击左侧In部分选中,点击键盘上的M键
Markdown编辑器,在某一行添加图片 
"""
import time
import numpy as np
import pandas as pd
start = time.perf_counter()
s = 100 * 100
end = time.perf_counter()
# print(f"总计耗时:{end - start}")
# 一、使用np的routines(常规)函数创建
# 数组形状 数据类型 内存存储类型C/F,先行还是先列存储
data1 = np.ones(shape=(5, 5), dtype=None, order="C")
# 多维数组 维度 行 列
data2 = np.zeros(shape=(2, 3, 4), dtype=np.float16, order="C")
# 指定其他数值的数组 填充数组的值 默认浮点数类型
data3 = np.full(shape=(3, 5), fill_value=3.14, dtype=np.float16, order="C")
# 对角线为1,其他的位置为0 单位矩阵
# 应该是一个正方形的数组
data4 = np.eye(N=5, M=None, k=0, dtype=float)
# 等差数组 np.linspace(0, 100, num=11,endpoint=Ture,retstep=False,dtype=Npne)
# 起始 结束 显示多少个数据 左闭右闭
data5 = np.linspace(0, 100, num=11)
# arange 步长
data6 = np.arange(0, 100, 10)
# size=5一维数组 size=(5,5)
data7 = np.random.randint(0, 100, size=(5, 5))
# 标准正太分布
# n normal 正常,正太
# d dimession 维度 4行5列的正太分布数组
# 平均值是0,方差是1
data8 = np.random.randn(4, 5)
# 平局值 标准差 生成数据个数 保留小数位数
data9 = np.random.normal(loc=175, scale=10, size=100).round(2)
# 平均值 data9.mean() data9.var()方差 方差的开平方就是标准差data9.std()
# 0~1随机数组 数组内的数据个数 [0.0,1.0)左闭右开的随机
data10 = np.random.random(size=(5, 5)) # size=10为一组,值是元组为多维数组
# 二、ndarray的属性
# 4个必记参数:ndim维度 shape形状 size总长度 dtype元素类型
# data10.ndim data10.shape data10.size data10.dtype
# 三、ndarray的基本操作
# 1.索引,与列表类似
# data11 = np.random.randint(0, 150, size=(4, 5), dtype=int)
data11 = np.array([[60, 123, 83, 62, 44],
[83, 46, 56, 26, 4],
[25, 48, 38, 129, 126],
[5, 40, 13, 123, 51]])
# data11[1, 1] 获取第二行第二列的元素
# data11[1] 获取第二行所有元素
# 2.切片
# data11[0:3] 第一行到第二行的所有数据,切片是[0,3)左闭右开原则
# data[-2:] 最后两行的数据
# data11[0:3行切, 0:3列切]
# data9[:10][::-1] 以为数组反转,先切出来10数字,再把这个10个数字的列表元素反转
# print(data9[:10][::-1])
from PIL import Image
cat = Image.open("./cat.jpg")
cat_data = np.array(cat)
# 彩色图片是三维:高度、宽度、像素(镖师不同颜色),红绿蓝三原色,搭配可以变幻出任意颜色
# uint8 u无符号的(0~255) int8是128~127
# 宽 高不动 颜色反转
cat_data2 = cat_data[:, :, ::-1]
# 绿色的图片 红绿蓝0,1,2
ss = Image.fromarray(cat_data[:, :, [1, 0, 2]])
# 黑白的图片 变成了二维数组,颜色通道没有了,所以是黑白色
sss = Image.fromarray(cat_data[:, :, 0])
# 马赛克
import matplotlib.pyplot as plt
from matplotlib import pyplot
# plt.imshow(cat_data[::-1]) # 图片上下颠倒
# plt.imshow(cat_data[::3, ::3]) # 每个三个取一个数据
# pyplot.show() # 没有这一行不会显示图片
# 三、变形
# 使用reshape函数,注意:参数是一个元组,元组的积不能变
# print(data11.reshape(5, 4)) 对于图片来说数据会混乱
# 数据不会改变 高和宽转置了位置,图片竖立起来了,像素通道不变
# data12 = np.transpose(cat_data, axes=(1, 0, 2))
# plt.imshow(data12)
# pyplot.show()
# 四、级联 级联就相当于数据的合并
# np.concatenate()级联需要注意的点:
# 1.级联的参数是列表,一定要加中括号或小括号
# 2.维度必须相同
# 3.形状相符
# 4.(重点)级联的方向默认是shape这个tuple的第一个值所代表的维度方向
# 5.可通过axis参数改变级联的方向
# data13 = np.concatenate([data11, data11])
# print(data13)
# plt.imshow(cat_data)
data14 = cat_data[:, :160]
data15 = cat_data[:, 290:, ::-1]
# data16 = np.concatenate([data14, data15], axis=1)
data16 = np.hstack([data14, data15]) # hstack水平级联,列数增加了
# data16 = np.vstack([data14, data15]) # vstack水平级联,行数增加了(图片报错了)
# plt.imshow(data16)
# pyplot.show()
# 五、切分
# 切分是级联的逆操作
# np.split np.vsplit np.hsplit
# indices_or_sections=2 平均分成两份数据,这个值要能被行/列 整除
# indices_or_sections=[1, 2] 第一份数据是1行,第二份数据是一行,剩下的是第三份数据
# data17 = np.split(ary=data11, indices_or_sections=[1, 2], axis=0)
# 六、ndarray的聚合操作
data18 = np.array([[60, 123, 83, 62, 44],
[83, 46, 56, 26, 4],
[25, 48, 38, 129, 126],
[5, 40, 13, 123, 51]])
# axis=1列没了,横着按照行计算,合成了一列 axis=0行没了,竖着按照列计算,合成了一行
# data11.sum() # 求和
# data11.prod() # 累乘
# data18.argmax(axis=1) # 求最大值的索引 13 data18.argmax(axis=1)每行最大值的索引-->[1 0 3 3]
# np.argwhere(data18 > 60) 得到该数组中所有大于60的元素的索引 np.argwhere((data18 > 60) & (data18 < 100))
# data18.ravel()把二维数组变为一维数组
# np.median(data18) 中位数 把数组从小到大排列,取中间的树 如果对象没有哪个属性,那就在模块中调用 np.median(对象)
# np.percentile(data18, q=[0, 100]) 找到一组数的分位数值 https://blog.youkuaiyun.com/weixin_40845358/article/details/84638449
# percentile()类似中位数,q=50就是中位数,这个可以自定义分位数
# data18.any() 元素都大于0为True data18.all() 返回bool值
# np.power() 幂运算
# data18.sum() np.nansum(data18)忽略空值
# np.corrcoef(a, b) 两个数组之间的关联,相关性系数,一般是-1到1之间的值,负相关,不相关nan,正相关
# 直方图统计 统计数据出现频次 分成五份 4到29之间的数出现了5次 29到54之间的数出现了6次 依次类推
# np.histogram(data18, bins=5) (array([5, 6, 3, 2, 4], dtype=int64), array([ 4., 29., 54., 79., 104., 129.]))
# np.save("./data.npy", data18)保存为二进制的文件
# ssss = np.load("./data.npy") 读取文件
# np.savetxt("./data.txt", data18) 使用科学计数法保存的数据
# ssss = np.loadtxt("./data.txt")
# 矩阵点积(线性代数)np.dot()
# x,y,z = 2,1,5 假设有下面三个方程,要求出三个未知数的值
# x + y + z = 8
# 2x - y + z = 8
# 3x + y - z = 2
# 获取系数,组成的数组
X = np.array([[1, 1, 1], [2, -1, 1], [3, 1, -1]])
Y = np.array([8, 8, 2]) # 这个分别对应三个方程的值
# w = np.array(["x", "y", "z"]) # 这个数组是我们要求的未知数组
# Xw = Y 矩阵相乘的运算得到Y w就等于Y除以X,但是矩阵之间没有除法,需要使用逆矩阵做乘法运算
X_inv = np.linalg.inv(X) # 得到X的逆矩阵 w = X逆矩阵 * Y
w = np.dot(X_inv, Y) # w等于 [2. 1. 5.] 正好对应三个未知数的值
# 七、广播机制
# ndarray广播机制的两条规则:1.为缺失的维度补1 2.假定缺失元素已有值填充
m = np.ones((2, 3)) # [[1. 1. 1.],[1. 1. 1.]]
a = np.arange(3) # [0 1 2]
# print(m + a) == np.add(m, a) [[1. 2. 3.],[1. 2. 3.]] 每一行竖着分别对应着相加
data19 = data18.mean(axis=1) # 每一行的平均值[74.4 43. 73.2 46.4] 列消失了
data19 = data19.reshape(4, 1) # 变成了竖着4行1列的数组
data20 = data18 - data19 # 每一行的每个数减去对应行的数 如第一行每个数都减去74.4
# 八、排序
# 1、快速排序
# np.sort() # 默认行内数据从小到大排序,升序 在内存中生成了一个新的对象 模快排序
# data18.sort() 自身数据变了 对象排序
# 2、部分排序 np.partition(a,k) k为正时,得到最小的k个数,k为负时,得到最大的k个数,最好一维数组
s1 = time.perf_counter()
# np.savetxt("./data.txt", data18)
ssss = np.loadtxt("./data.txt")
print(ssss)
s2 = time.perf_counter()
print(f"聚合操作耗时{(s2 - s1).__round__(20)}")
相关推荐
LSTM-CRF 双色球预测模型实战:TensorFlow 2.15 训练与 1000 期历史数据分析
本文详细介绍了如何使用LSTM-CRF模型结合TensorFlow 2.15进行双色球彩票预测的实战教程。通过分析1000期历史数据,展示了从数据爬取、预处理到模型训练与评估的全流程,并探讨了AI在彩票预测中的应用效果与局限性。虽然模型表现优于随机猜测,但彩票的随机性本质仍需理性对待。
《封号码罗》数据分析与人工智能之pandas(三)
第一部分 import numpy as np import pandas as pd from pandas import Series, DataFrame import matplotlib.pyplot as plt from matplotlib import pyplot import time # 一、Series是一种类似与一维数组的对象,有下面两部分组成: # ...
AI车牌识别技术解析:隐私风险与监控边界探讨
AI车牌识别技术基于计算机视觉和深度学习原理,通过边缘计算设备实时处理视频流,结合OCR算法提取车牌信息。这项技术的核心价值在于提升交通管理和公共安全效率,但同时也引发了数据隐私保护的深度思考。在实际应用中,车牌识别系统涉及边缘计算、云端数据分析等关键技术环节,数据流向和访问控制成为工程实践中的重要考量。以Flock Safety系统为例,该系统展示了AI监控在执法场景中的实际应用,同时也暴露了数据传输加密、权限管理等安全隐患。随着AI监控技术的普及,如何在技术创新与个人隐私保护之间建立平衡,成为行业亟待解
《封号码罗》数据分析与人工智能之pandas(四)
第一部分 import numpy as np import pandas as pd from pandas import Series, DataFrame import matplotlib.pyplot as plt from matplotlib import pyplot import time # 数据加载 # pd.read_"文件类型"("./文件名称.后缀",header=N...
用数据分析优化彩票决策:放弃预测,专注理性投入
彩票本质上是负和博弈的概率系统,其核心并非号码预测,而是对玩法规则、返奖率(RTP)、投入策略与心理约束的量化决策。基于组合数学与二项分布的分析方法,可精确计算各奖项概率、评估不同玩法的实际回报效率,并构建个人资金-风险-目标模型。数据的价值不在于打破随机性,而在于识别非随机环节——如奖池跃升期的RTP波动、固定奖的保底收益、冷热号背后的分奖博弈结构。这种以决策优化为导向的数据实践,适用于将彩票视为受控实验的理性参与者,而非追求玄学中奖的投机者。
SpaceXAI取代xAI:马斯克AI与太空探索融合的技术架构解析
人工智能作为现代科技的核心驱动力,其技术原理基于深度学习和神经网络模型。Transformer架构通过自注意力机制实现了对序列数据的有效处理,为自然语言理解和多模态学习奠定了理论基础。在工程实践中,AI技术的价值体现在自动化决策、智能优化和复杂系统管理等多个维度。特别是在太空探索领域,AI可以处理海量遥测数据、优化火箭发射轨迹、实现自主导航系统。SpaceXAI作为埃隆·马斯克将AI与太空探索深度融合的战略载体,其技术架构整合了Grok系列模型和Colossus超级计算机,为星际任务提供智能支持。这一转型不
《封号码罗》数据分析与人工智能之sklearn梯度下降(九)
第一部分 import sklearn.datasets as datasets from sklearn.model_selection import train_test_split import numpy as np import matplotlib.pyplot as plt # 如果有截距,求解时,需要梯度下降法求解w和b # 什么是梯度??? 梯度就是导数 # 梯度下降是求解最...
22 | 书籍推荐数据分析
根据我们的图表,Stephen King 和 P.G. Wodehouse 是数据集中写了最多书籍的作者,每位作者都有40本书。这意味着《暮光之城》的评分次数超过了400万次,其次是《霍比特人》和《麦田里的守望者》,它们的评分次数超过了200万次。我们所得到的书籍几乎都具有相同的评分,同时我们还收到了一些与哈利·波特系列类似的奇幻故事,比如《指环王》。从我们的模型展现的结果来看,我们得到了相当不错的结果。当我们输入了哈利·波特系列中的一本书的名称后,系统根据平均评分迅速为我们推荐了一些类似的书籍。
数据分析用例一:足球运动员数据分析
df.head()# 设置默认显示的行数# 设置默认显示的列数# 查看数据# 查看数据的形状# df.shape# 查看数据的前5行# 查看数据的后5行# 随机查看数据的5行数据详细字段名备注Name姓名国籍国家队位置国家队号码Club所在俱乐部所在俱乐部位置Club_Kit俱乐部号码加入俱乐部时间合同到期时间Rating评分Height身高Weight体重擅长左(右)脚Birth_Date出生日期Age年龄擅长位置Work_Rate。
工作记忆在AI原生推荐系统中的应用与优化
认知科学告诉我们,人类通过“工作记忆”(Working Memory)实时处理和暂存当前任务的信息——比如你记住一个临时电话号码、规划购物清单时,依赖的正是这种容量有限但动态更新的“短期记忆系统”。如果将这一机制引入AI原生推荐系统,能否让机器像人类一样,精准捕捉用户的“当下需求”?工作记忆的核心特性及其对推荐系统的价值;如何在AI原生推荐系统中建模工作记忆模块(含数学原理与代码实现);工作记忆模块的动态优化策略(容量控制、遗忘机制、多模态融合);
SAP中成本估算没有找到工艺路线消息处理实例
在针对成品的标准成本核算处理过程中,系统中会经由设定好的策略来收集成品相关成本组成,最终计算出产成品的标准成本。关于成本组成,可以归纳为三个基本要素,料,工,费。即标准成本就是要知道,生产一件成品,需要消耗多少钱的原材料?消耗多少钱的人工?以及其它的间接消耗? 某日,接到CO同事的反馈,在用CK11N做产成品标准价格核算时,提示没有工艺路线确定,但该消息为绿灯,可以通过。基于业务上的谨慎,提出分析。 从提示可以看出问题与工艺路线有关。因为,成品工艺路线中设定有成品生产所耗工时,所以,在计算产成品标准
[Day 62] 區塊鏈與人工智能的聯動應用:理論、技術與實踐
隨著人工智能(AI)技術的快速發展,它在電子商務領域的應用也日益廣泛。AI不僅能夠提高運營效率,還能為客戶提供更個性化、更智能的購物體驗。本文將探討AI在電子商務中的一些具體應用實例,並通過代碼示例來說明這些應用是如何實現的。智能產品推薦是AI在電子商務中最常見和最有效的應用之一。通過分析用戶的瀏覽歷史、購買記錄和其他行為數據,AI可以為每個用戶提供個性化的產品推薦。
datart 二开环境搭建
下载源码, 地址: https://github.com/running-elephant/datart, dev 分支; 解压后使用 idea 打开; 服务端: 3.1 安装依赖, idea会自动安装; 3.2 修改配置文件 /config/application.yml 3.3 创建数据库,并将bin/datart.sql导入到数据库中 3.4 入口: /server/src/main/java/datart/DatartServerApplication.java [外链图片转存失败,源站可能有防.
人工智能开源库有哪些
人工智能开源库
【面试经验】京东-技术产品经理一面:从紧张到反思的全流程复盘
本文详细复盘了京东技术产品经理一面的全流程,从面试前的简历打磨、业务理解和技术基础准备,到面试中的高压对话和突发状况应对,再到面试后的深度反思与改进方案。文章特别强调了技术产品经理需要具备的技术理解力、数据敏感度和商业思维,并提供了实用的面试建议和准备技巧。
Android存储空间不足下,APP出现奔溃等情况
版权声明:本文为博主原创文章,未经博主允许不得转载。 1. 问题起因 实时录制视频,使用getExternalCacheDir()函数返回的路径作为文件缓存区 2. 问题产生 系统在空间不足的情况下第一清除getExternalCacheDir和getCache文件下的缓存,导致正在录制的视频出现Error。 3. 解决方案 第一
泰坦尼克数据表python分析_Python数据分析入门-泰坦尼克案例(一)
本文以经典的泰坦尼克数据,熟悉掌握基本的Python数据分析,以及可视化步骤。工具:jupyter notebook所需模块:pandas,numpy,matplotlib,seaborn,sklearn数据文件:链接:迅雷云盘 提取码:MOGD导入库# 数据分析import pandas as pdimport numpy as np# 绘图import matplotlib.pyplot a...
LightGBM学习笔记
LightGB学习笔记1. lightgbm概述1.1 lightgbm介绍1.2 lightgbm和xgboost对比2 .直方图算法及改进2.1 直方图算法2.2 直方图算法改进2.2.1 GOSS算法3.树的生长策略4.系统设计5. 实战 lightgbm是基于boosting的学习框架,使用的是基于决策树的学习算法,具有更快的训练速度、更低的内存使用、更高的正确率、并且能够支持并行化学习,可以用来处理大规模数据,本文主要是针对学习视频https://www.bilibili.com/video/BV
python有哪些应用方向及其学习方法 资源推荐
对于初学者来说,学习一门语言之前,最重要的是要了解这门语言有哪些应用方向,才能更好的根据自身的需求来有针对性的学习这门语言那么,python 语言的应用领域有哪些呢?
MATPOWER下载安装教程
将MATPOWER文件复制在C:\Program Files (x86)\MATLAB\R2016b\bin目录下。原来的窗口中多了很多文件路径,点击【保存】,再点击【关闭】选择所要添加的MATPOWER文件夹,点击【选择文件夹】二、将MATPOWER放在bin目录下。找到菜单栏的【设置路径】点击【添加并包含子文件】一、从官网下载后解压。
195、大模型蒸馏与压缩:知识蒸馏与VLA模型轻量化
折腾完这一整套流程,最大的感悟是:知识蒸馏不是简单的模型压缩,而是知识迁移的工程艺术。每一步都有坑,每个参数都可能影响最终性能。给后来者的建议是:先别急着上蒸馏,把teacher模型的推理延迟和显存占用测清楚,确定瓶颈在哪里——是计算量太大还是内存带宽不够,这决定了你该用蒸馏还是量化还是剪枝。蒸馏训练时一定要监控每一层的特征对齐loss,别只看总loss。如果某一层的对齐loss特别高,说明student在这一层学歪了,需要调整该层的损失权重或者增加该层的投影头容量。
AI搜索优化实战指南:GEO、AEO与AI搜索三位一体策略
搜索引擎优化(SEO)是提升网站在搜索引擎中自然排名的系统性技术。其核心原理是通过优化网站内容、结构和技术要素,使其更符合搜索引擎的算法偏好,从而获取更多曝光和流量。随着人工智能(AI)技术深度融入搜索引擎核心系统,传统基于关键词匹配的SEO策略正面临重构。AI驱动的搜索系统更注重理解用户意图、评估内容权威性和用户体验,这为SEO带来了新的技术价值——从单纯追求排名转向构建主题权威和提供即时答案。在此背景下,地理定位优化(GEO)和答案引擎优化(AEO)成为关键应用场景。GEO通过强化本地实体信息和区域化内
Java小白入门200例81之Java接口
作者简介 作者名:编程界明世隐 简介:优快云博客专家,从事软件开发多年,精通Java、JavaScript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞! 引言 很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢? 其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大
DeepSeek实战手册:AI测试工程师的模型验证与优化全流程
本文详细解析了AI测试工程师在模型验证与优化中的全流程实践,重点介绍了DeepSeek在测试数据生成、自动化测试和模型监控中的应用。通过实战案例展示了如何利用AI技术提升测试效率,确保模型的功能性、安全性和公平性,为AI测试工程师提供了一套完整的成长路径和工具链建设方案。
pscad IEEE标准系统搭建说明
pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。
jdk-8u144-linux-x64.tar.gz.
该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包
解密银行卡BIN号码:binlist-data项目全面解析与应用指南
在数字支付时代,每张银行卡的前6-8位数字都隐藏着丰富的信息——这就是银行识别号码(BIN/IIN)。binlist-data项目提供了一个包含超过34万条记录的开放源代码BIN数据库,为金融科技开发者、支付系统工程师和安全研究人员提供了宝贵的资源。 ## 项目核心价值:为什么你需要BIN数据 BIN号码是支付生态系统的DNA,它揭示了银行卡的发行银行、卡类型、品牌和国家信息。对于任何处理支付
文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况
主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。
10月5日彩票数据分析预测指南,【AGI使用教程】Meta 开源视觉基础模型 DINOv3(1)下载与使用。
通过调用公开数据接口或彩票数据平台API获取2023年10月5日的福彩(如双色球、3D)和体彩(如大乐透、排列三)开奖数据。
最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版
Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。
338



被折叠的 条评论
为什么被折叠?



