python_day14_综合案例

news2024/11/24 13:43:10

文件内容
在这里插入图片描述

导包配置

import json

from pyspark import SparkContext, SparkConf
import os

os.environ["PYSPARK_PYTHON"] = "D:/dev/python/python3.10.4/python.exe"
os.environ["HADOOP_HOME"] = "D:/dev/hadoop-3.0.0"
conf = SparkConf().setMaster("local[*]").setAppName("test_spark")
conf.set("spark.default.parallelism", "1")  # 写入一个分区
sc = SparkContext(conf=conf)

文件准备

rdd = sc.textFile("D:/search_log.txt")
print(rdd.collect())

在这里插入图片描述

TODO 热门搜索时间段TOP3

"""
取出时间转换为小时
转为(小时,1)二元元组
reduceByKey算子聚合
sorted排序
take前三(返回list,无需collect)
"""
rdd_1 = rdd.map(lambda x: x.split("\t")). \
    map(lambda x: x[0][:2]). \
    map(lambda x: (x, 1)). \
    reduceByKey(lambda a, b: a + b). \
    sortBy(lambda x: x[1], ascending=False, numPartitions=1). \
    take(3)
print(rdd_1)

在这里插入图片描述

TODO 热门搜索TOP3

"""
取出搜索词
(word,1)二元元组
聚合
TOP3
"""
rdd_2 = rdd.map(lambda x: (x.split("\t")[2], 1)). \
    reduceByKey(lambda a, b: a + b). \
    sortBy(lambda x: x[1], ascending=False, numPartitions=1). \
    take(3)
print(rdd_2)

在这里插入图片描述

TODO 统计关键字什么时段搜索最多

"""
filter过滤,保留关键字
(时段,1)二元元组
聚合
排序
取TOP1
"""
rdd_3 = rdd.map(lambda x: x.split('\t')). \
    filter(lambda x: x[2] == "黑马程序员"). \
    map(lambda x: (x[0][:2], 1)). \
    reduceByKey(lambda a, b: a + b). \
    sortBy(lambda x: x[1], ascending=False, numPartitions=1). \
    take(1)
print(rdd_3)

在这里插入图片描述

TODO 将数据转为JSON,写会文件

"""
存入字典
转为JSON
saveAsTextFile写入文件,写入一个分区:conf.set("spark.default.parallelism", "1")  
"""
rdd.map(lambda x: x.split("\t")). \
    map(lambda x: {"Time": x[0], "ID": x[1], "KsyWord": x[2], "times_1": x[3], "times_2": x[4], "URL": x[5]}). \
    map(lambda x: json.dumps(x)). \
    saveAsTextFile("D:/op_json")

在这里插入图片描述

断开链接

sc.stop()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/796134.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Megatron-LM、NVIDIA NeMo、model_optim_rng.pt 文件是什么?

本文涉及以下几个概念,分别是: Megatron和Megatron-LM-v1.1.5-3D_parallelism NVIDIA NeMo Megatron和Megatron-LM-v1.1.5-3D_parallelism是什么? Megatron是由NVIDIA开发的一种用于训练大规模语言模型的开源框架。它旨在提供高效的分布式…

鸿蒙4.0重大官宣!六大功能呼之欲出!

鸿蒙系统是当年华为为应对美国封杀而开发的操作系统,当时只是权宜之计,但没想到它的发展壮大远远超出了人们的预期,2021年其用户就突破了1亿,去年7月搭载鸿蒙系统的设备超过了3亿。近日,华为官宣将在今年8月4号的开发者大会上发布全新的鸿蒙4.0系统,系统包含多项让人…

THM-被动侦察和主动侦察

被动与主动侦察# 在计算机系统和网络出现之前,孙子兵法在孙子兵法中教导说:“知己知彼,必胜不疑。” 如果您扮演攻击者的角色,则需要收集有关目标系统的信息。如果你扮演防御者的角色,你需要知道你的对手会发现你的系…

加利福尼亚大学|3D-LLM:将3D世界于大规模语言模型结合

来自加利福尼亚大学的3D-LLM项目团队提到:大型语言模型 (LLM) 和视觉语言模型 (VLM) 已被证明在多项任务上表现出色,例如常识推理。尽管这些模型非常强大,但它们并不以 3D 物理世界为基础,而 3D 物理世界涉及更丰富的概念&#xf…

视频监控管理平台EasyCVR录像的3种方式

视频监控综合管理平台EasyCVR可以实现海量资源的接入、汇聚、计算、存储、处理等,平台具备轻量化接入能力,可支持多协议方式接入,包括主流标准协议GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Eho…

深入理解 python 虚拟机:字节码灵魂——Code obejct

Code Object 数据结构 typedef struct {PyObject_HEADint co_argcount; /* #arguments, except *args */int co_kwonlyargcount; /* #keyword only arguments */int co_nlocals; /* #local variables */int co_stacksize; /* #entries needed for evaluation stack */int co_f…

Flutter 异步编程指南作

1 Dart 中的事件循环模型 在 App 开发中,经常会遇到处理异步任务的场景,如网络请求、读写文件等。Android、iOS 使用的是多线程,而在 Flutter 中为单线程事件循环,如下图所示 Dart 中有两个任务队列,分别为 microtask…

Windows 11的最新人工智能应用Windows Copilot面世!

Windows Copilot是Windows 11预览版中的一项AI辅助功能。 Windows 11还包括设置应用程序的更改,更广泛的支持压缩文件格式。 上个月,微软宣布将继续其将ChatGPT应用于所有产品的冒险之旅,推出了名为Copilot的新Windows 11功能。几个月前&…

难评的Worldcoin,正在登月中

7月24日,前段时间搅混加密舆论界一汪春水的Worldcoin正式上线代币WLD。 由Openai创始人Sam Altman牵头的Worldcoin项目在其试点之初就备受关注,而该种关注在其融资近一亿美金后更是空前,币种上架的呼声不断。 但当代币真的狼来了时&#xff0…

使用CRM分析数据有哪些功能?

CRM数据分析软件可以帮助企业增强竞争力,并更好地了解客户需求及市场变化,助力企业数据分析,并提供实时更新的数据和分析结果,CRM数据分析软件的主要特点是什么?包括以下6个特点。 CRM数据分析软件的主要功能通常包括…

四、约束-2.演示

【案例】 根据需求&#xff0c;完成表结构的创建 创建一个user表&#xff1a; create table user(id int primary key auto_increment comment 主键,name varchar(10) not null unique comment 姓名,age int check ( age > 0 && age < 120 ) comment 年龄,statu…

《嵌入式系统工程师》精讲视频-希赛网--视频笔记

只看我不熟的内容 P8 04流水线 理论公式必须熟悉 P29 01OSI&#xff0f;RM 1年大概考4分&#xff0c;主要考察前3个知识点 应用层--与用户打交道&#xff1b;表示层--压缩、加密等&#xff1b;会话层--建立、终止会话&#xff1b; 传输层--建立端到端连接&#xff1b;网络层--路…

vue-cli-service requires Node ^12.0.0 || >= 14.0.0

运行npm run serve 时&#xff0c;报错如下&#xff1a; 系统&#xff1a;win7 node版本&#xff1a;13.14.0 解决方法&#xff1a; 根据路径&#xff08;node_modules/vue/cli-service/package.json&#xff09;找到package.json文件&#xff0c;并将engines的node属性值改为…

关于Ubuntu 18.04 LTS环境下运行程序出现的问题

关于Ubuntu 18.04 LTS环境下运行程序出现的问题 1.运行程序时出现以下情况 2.检查版本 strings /lib/x86_64-linux-gnu/libc.so.6 |grep GLIBC_​ 发现Ubuntu18.04下的glibc版本最高为2.27,而现程序所使用的是glibc2.34,所以没办法运行, 3.解决办法 安装glibc2.34库, …

C语言每日一题:7.寻找数组中心下标。

思路一&#xff1a; 暴力求解&#xff1a; 1.定义一个ps作为中间下标去记录下标值。 2.循环下标ps从头到位&#xff0c;定义四个变量分别是left sum_left,right,sum_right… 3.初始化leftps-1和rightps1.当ps0—>就让sum_left0,和psn-1->>>sum_right0; 4.循环结尾判…

深入探索文心千帆大模型平台:实现企业级大模型训练和推理

摘要&#xff1a;本文将介绍百度智能云推出的文心千帆大模型平台&#xff0c;以满足企业和个人客户的需求。通过该平台&#xff0c;用户可以进行大模型训练和推理&#xff0c;并且享受一站式的工具链和环境。作者将分享自己在平台上的亲身体验&#xff0c;并提供相关的代码示例…

阿里云RDS数据库高可用版升级为集群版

文章目录 1.在集群中添加两个只读实例1.1.点击添加只读实例1.2.配置实例的计费方式及所在可用区1.3.设置实例的资源规格1.4.选择实例使用的专有网络1.5.确认参数配置及订单信息1.6.查看购买的只读实例 2.开启RDS数据库的读写分离2.1.查看只读实例提供的集群地址2.2.开启RDS的读…

算法(2)

二叉树 镜像二叉树 树轴对称 第一个节点的左子树与第二个节点的右子树同步递归对比&#xff0c;第一个节点的右子树与第二个节点的左子树同步递归比较。 二叉树序列化、反序列化 当然你也可以根据满二叉树结点位置的标号规律来序列化&#xff0c;还可以根据先序遍历和中序遍…

客户体验:妙鸭相机(AI)与线下摄影的体验比较

Guofu 第 103⭐️ 篇原创文章分享 &#xff08;点击&#x1f446;&#x1f3fb;上方卡片关注我&#xff0c;加⭐️星标⭐️~&#xff09; &#x1f68f; 写在前面 最近 AI 的发展&#xff0c;每天都在刷新着我们的认知&#xff0c;人工智能已经渗透到我们生活的各个角落。其中&…

ssh2-sftp-client实现前端项目自动部署

首先要npm安装插件 npm i ssh2-sftp-client 项目中新建一个js文件 npm run build 之后在终端中 执行这个js文件就可以直接将文件上传到 服务器 import Client from ssh2-sftp-client; import { join } from path;const sftp new Client();const deploy async () > {try…