- 博客(50)
- 收藏
- 关注
原创 大数据应用开发和项目实战-电商双11美妆数据分析2
使用seaborn库绘制复杂图表,展示各品牌和品类的销售情况。绘制嵌套柱形图,分别按主类别和子类别进行对比。通过饼图展示男士专用产品的销售偏好,发现男士主要关注清洁和补水类产品。用seaborn包给出每个店铺各个大类以及各个小类的销量销售额先观察销量,各店小类中销量最高的是相宜本草的补水类商品以及妮维雅的清洁类商品,这两类销量很接近。而销售额上,相宜本草的补水类商品比妮维雅的清洁类商品要高得多,这显然是商品平均单价不同所导致的。
2025-05-07 16:55:44
1177
原创 大数据应用开发和项目实战-Seaborn
seaborn建立在matplotlib之上,专注于统计数据可视化,简化绘图过程,提供高级接口和美观的默认主题。
2025-04-30 16:10:37
1088
原创 大数据应用开发和项目实战-Matplotlib2
pie():绘制饼图练习目前学校在统计大家喜欢什么球类运动。已知五年级三班的同学中,喜欢篮球的同学占20%,喜欢乒乓球的同学占30%,喜欢羽毛球的同学占20%,喜欢足球的同学占18%,喜欢排球的同学占12%。请你根据已知条件画出一个饼图,让所占比例看的更加清楚。
2025-04-29 14:46:37
1152
原创 大数据应用开发和项目实战
plot()中的 marker 参数:定义一些不一样的标记。xlabel()、ylabel() :设置 x 轴和 y 轴的标签。title() :设置标题。
2025-04-28 18:04:44
1072
原创 spark总结
Spark是基于内存的大数据分析计算引擎,核心模块包括Spark Core、SQL、Streaming、MLlib和GraphX。其运行模式多样,如Local、Standalone、Yarn等,各有特点和适用场景。Driver负责作业调度,Executor执行任务,此外还有Master、Worker等组件协同工作。
2025-04-27 19:21:00
1006
原创 Spark-Streaming3
saveAsObjectFiles(prefix, [suffix]):以 Java 对象序列化的方式将 Stream 中的数据保存为SequenceFiles . 每一批次的存储文件名基于参数中的为"prefix-TIME_IN_MS[.suffix]".updateStateByKey() 的结果会是一个新的 DStream,其内部的 RDD 序列是由每个时间区间对应的(键,状态)对组成的。2. 定义状态更新函数,用此函数阐明如何使用之前的状态和来自输入流的新值对状态进行更新。结合RDD进行输出。
2025-04-27 18:01:54
630
原创 kafka和Spark-Streaming2
Kafka 中消息是以topic 进行分类的,生产者生产消息,消费者消费消息,都是面向topic 的。“.log”文件存储大量的数据,“.index”文件存储偏移量索引信息,“.timeindex”存储时间戳索引文件。日志文件和索引文件都是根据基本偏移量(LogSegment中的第一条消息的offset)来命名的。上图第2个LogSegment对应的基本偏移量是133,说明了第1个LogSegment中共有133条数据。
2025-04-25 18:30:27
985
原创 Spark-Streaming
可在kafka的/root/kafkadata目录下查看分区中log。每一条数据,只存在于当前主题的一个分区中,所有的副本中,都有数据。使用 Kafka 生产数据的命令,并将其比作往篮子里放鸡蛋的过程。使用 Kafka 消费数据的命令,并将其比作从篮子里取鸡蛋的过程。读取数据时,分区间的数据是无序的,分区中的数据是有序。设定副本数量,不能大于broker的数量。此命令会从日志文件中的最后的位置开始消费。分区数量,副本数量,都是必须的。在Kafka的数据目录下查看。命令删除指定的 Topic。
2025-04-24 11:39:25
916
原创 spark—kafka
启动HDFS以及Yarn集群提交测试应用bin/spark-submit \--class org.apache.spark.examples.SparkPi \--master yarn \--deploy-mode cluster \./examples/jars/spark-examples_2.12-3.0.0.jar \。当consumer去消费数据的时候,会有一个偏移量(offset),一个分区的数据,一个consumer只能消费一次。:修改配置文件,添加Java Home和YARN相关变量。
2025-04-23 20:09:28
1324
原创 Spark-Streaming(1)
自定义数据源需要继承 Receiver,并实现 onStart、onStop 方法来自定义数据源采集。(在 class 中定义 on start 和 on stop 方法。on start方法中创建新线程并调用接收数据的方法。on stop方法为空。案例:自定义数据源,实现监控某个端口号,获取该端口号内容。1) 自定义数据源receive()}.start()while(!= null){2) 使用自定义的数据源采集数据扁平化数据将所有数据根据空格切分并进行扁平化处理。
2025-04-22 18:22:12
996
原创 Spark-SQL核心编程3
SparkSQL 提供了。这里的通用指的是使用相同的API,根据不同的参数读取和保存不同格式的数据,SparkSQL默认读取和保存的文件格式为parquet。
2025-04-16 18:46:09
922
原创 Spark-SQL核心编程2
UDF强类型的 Dataset 和弱类型的 DataFrame 都提供了相关的聚合函数, 如 count(),countDistinct(),avg(),max(),min()。除此之外,用户可以设定自己的自定义聚合函数。Spark3.0之前我们使用的是UserDefinedAggregateFunction作为自定义聚合函数,从 Spark3.0 版本后可以统一采用强类型聚合函数 Aggregator实验需求:计算平均工资。
2025-04-15 12:41:09
1100
原创 Spark-SQL核心编程
Hadoop在处理结构化数据方面存在局限性,无法有效处理某些类型的数据。Spark应运而生,特别设计了处理结构化数据的模块,称为Spark SQL(原称Shark)。
2025-04-14 17:51:48
1068
原创 spark-core编程
RDD 的两种算子:转换算子和行动算子。RDD 根据数据处理方式的不同将算子整体上分为 Value 类型、双 Value 类型和 Key-Value 类型。算子实际上是一些函数,用于数据处理。
2025-04-10 18:36:51
1227
原创 Windows-spark安装过程
终端(win+r)(要开一个新的)输入spark-shell运行结果:出现下面的就成功了注意:把spark下载后放到的文件夹的那个名字里面不能带空格。
2025-04-08 11:15:09
727
原创 scala-集合3
过滤:遍历一个集合并从中获取满足指定条件的元素组成一个新的集合(筛选出满足条件的元素组成新集合。转换或映射(map):将原始集合中的元素映射到某个函数。扁平化:取消嵌套格式,将嵌套元素和外层元素放在一起。扁平化+映射:flatMap相当于先进行 map 操作,在进行 flatten 操作(先进行映射操作,再进行扁平化操作。集合中的每个元素的子元素映射到某个函数并返回新集合分组(group):按照指定规则对集合元素进行分组。简化(归约)和折叠:通过指定逻辑聚合数据,减小数据量。
2025-04-08 10:10:59
551
原创 scala-集合2
(1)[Any]存放任意数据类型(2)(3, 2, 5)初始化好的三个元素(3)ArrayBuffer 需要引入 scala.collection.mutable.ArrayBuffer。
2025-04-07 18:02:11
1232
原创 Scala-面向对象2和集合
使用 type 关键字可以定义新的数据数据类型名称,本质上就是类型的一个别名(1)Scala 的集合有三大类:序列 Seq、集 Set、映射 Map,所有的集合都扩展自 Iterable 特质。(2)对于几乎所有的集合类,Scala 都同时提供了可变和不可变的版本,分别位于以下两个包不可变集合:scala.collection.immutable可变集合:scala.collection.mutable。
2025-04-03 11:37:55
1380
原创 Scala-面向对象
回顾:Java 中的类如果类是 public 的,则必须和文件名一致。一般,一个.java 有一个 public 类注意:Scala中没有public,一个.scala中可以写多个类。
2025-04-02 17:35:56
1026
原创 scala-函数式编程
函数 1:无参,无返回值函数 5:多参,无返回值函数 4:有参,有返回值函数 3:有参,无返回值函数 2:无参,有返回值函数 6:多参,有返回值// 函数 1:无参,无返回值println("无参,无返回值")test1()// 函数 2:无参,有返回值return "无参,有返回值"// 函数 3:有参,无返回值println(s)// 函数 4:有参,有返回值return s+"有参,有返回值"// 函数 5:多参,无返回值// 函数 6:多参,有返回值。
2025-04-01 11:25:04
1022
原创 Scala(2)
另一个方法:(不用reverse,使用by,后面的数字前面加个负号,就倒着排序了)说明:将遍历过程中处理的结果返回到一个新 Vector 集合中,使用 yield 关键字。需求:将原数据中所有值乘以 2,并把数据返回到一个新的集合中。需求:使用循环守卫(guard)来打印1到10之间的所有。需求:输出 1 到 5 中,不等于 3 的值。需求:创建一个包含1-10之间所有偶数的列表。需求:输出 1 到 10 以内的所有奇数。需求:倒序打印 10 到 1。:鸡有23只,兔有12只。注意:开发中很少使用。
2025-03-31 18:00:07
590
原创 Scala基础
分为强类型语言和弱类型语言强类型语言:Javaint num=10;弱类型语言:JS、Scalavar x=111;val f=58;var定义变量;val定义常量//使用val定义的变量值是不可变的,相当于java里用final修饰的变量val i = 1//使用var定义的变量是可变的,在Scala中鼓励使用val//Scala编译器会自动推断变量的类型,必要的时候可以指定类型//变量名在前,类型在后。
2025-03-28 10:29:39
717
原创 Scala
Scala特性面向对象特性类和对象: Scala支持类和对象,可以定义属性和方法。继承和多态支持类的继承和多态,可以创建层次结构和重用代码。抽象类和特质可以定义抽象类和特质(traits),用于定义接口和实现部分行为。封装支持访问控制修饰符(public、protected、private),实现数据的封装。函数式编程高阶函数函数可以作为参数传递给另一个函数,或者从另一个函数返回。不可变性默认使用不可变数据结构,有助于避免副作用,提高代码的并发安全性。模式匹配。
2025-03-27 09:52:09
732
原创 图像识别-语义分割
可以根据速度要求来快速完成剪枝。各层统一用卷积得到64个特征图。把能拼能凑的特征全用上就是。很多视觉任务都可以套用这招。这么简单的结构就能把分割。densenet思想一致。因为前面也单独有监督训练。训练的时候同样会用到L4。概述就是编码解码过程。还引入了特征拼接操作。最终组合得到全部特征。
2025-03-21 08:47:57
451
原创 图像识别-YOLO系列v3
终于到V3了,最大的改进就是网络结构,使其更适合小目标检测特征做的更细致,融入多持续特征图信息来预测不同规格物体先验框更丰富了,3种scale,每种3个规格,一共9种softmax改进,预测多标签任务(图片展示了Uv3与其他两个网络的对比图,横轴代表预测时间,纵轴代表MAP(Mean Average Precision)。预测时间越短越好,MAP值越大越好。Uv3的优势:在coco数据集上,Uv3在速度和准确率上都表现最优。Uv3的主要改进网络结构。
2025-03-13 11:30:26
404
原创 图像识别-YOLO系列
经典的one-stage方法You Only Look Once,名字就已经说明了一切!把检测问题转化成回归问题,一个CNN就搞定了!可以对视频进行实时检测,应用领域非常广!(其中Reshape中30是5+5+20)10 =(X,Y,H,W,C)*B(2个)(其中C是置信度)当前数据集中有20个类别7*7表示最终网格的大小。
2025-03-12 16:27:52
1871
原创 图像识别-目标检测项目
YOLO系列:YOLO v1-v5 (YOLO 11不一定比YOLO 8好,因为过拟合和欠拟合方面的原因,模型选择应遵循简单有效原则,避免过拟合,不同数据集适合不同的模型,没有绝对的“最好”模型)经典发展线:R-CNN、SPP-Net、Fast R-CNN、 Faster R-CNN。:(Xmin, Ymin, W, H),其中x,y,w,h均不是归一化后的数值,分别代表左上角坐标和宽、高。:(x,y,w,h)分别代表中心点坐标和宽、高x,y,w,h均为归一化结果。scale来表示目标的大小(面积大小)
2025-03-11 11:20:37
1517
原创 图像识别总结-手写数字识别项目,集成算法,pytorch实现cifar10多分类
在训练模型之前,我们需要定义一个损失函数和一个优化器。损失函数用于量化模型预测与真实标签之间的差异,优化器用于更新模型的权重。① 定义损失函数②定义优化器。
2025-03-10 18:17:55
518
原创 图像识别-手写数字识别项目
F.softmax函数中参数dim指维度,dim=0表示按列计算;dim=1表示按行计算。默认dim的方法已经弃用了,最好声明dim,否则会警告.导入tensorboard的SummaryWriter类,用于将训练过程中的日志写入到TensorBoard中,便于可视化分析。导入torchvision.transforms模块,它提供了许多常用的数据预处理操作,如裁剪、旋转、归一化等。从torch.utils.data模块导入DataLoader类,用于加载数据集并提供批量处理功能。
2025-03-06 16:07:17
273
原创 图像识别-pytorch实现cifar10多分类(2)
correct 用于记录预测正确的样本数量。total 用于记录总的测试样本数量。使用 torch.no_grad() 上下文管理器来关闭梯度计算,因为在测试阶段不需要计算梯度。每次迭代从 testloader 中获取一批测试数据,并将其转换为张量格式。将图像和数据转移到与模型相同的设备(CPU 或 GPU)上进行处理。labels.size(0) 获取当前批次中样本的数量,累加到 total 中。
2025-03-04 10:30:33
727
原创 图像识别-pytorch实现cifar10多分类
transforms.Compose: 将多个预处理步骤组合在一起。transforms.ToTensor(): 将PIL图像或NumPy数组转换为PyTorch张量,并将像素值从[0, 255]缩放到[0, 1]。transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)): 对图像进行标准化处理,使其均值和标准差符合指定的参数。
2025-03-03 17:02:41
1757
1
原创 大数据导论—概述
大数据特性有5个:数据量,多样性,价值,速度,真实性大数据则指PB(10的15次方)级及其以上的数据多样性:数据类型包括结构化数据,非结构化数据和半结构化数据。
2025-03-02 23:44:08
442
原创 删除pytorch
再用pip install numpy下载回来(删除和下载区别就一个是个有un-),也可以把pip变成cond下载。举个例子(拿numpy)
2025-03-01 00:58:44
369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人