【python--读取文件夹下所有文件读取关键词】

🚀 作者 :“码上有前”
🚀 文章简介 :Python
🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬

在这里插入图片描述

python练习题

  • 抽取关键词

抽取关键词

import os
import json
import pandas as pd# 指定文件夹路径和关键词列名
folder_path = './Cosmetic_data/Brand_Classification/brand&details_analysis'
categories_path = './Cosmetic_data/Makeup_Classification/pcommit&details_analysis'
keyword_column = '关键词'  # 替换为实际的关键词列名def extract_keywords(folder_path, keyword_column):# 存储关键词的列表keyword_list = []# 获取文件夹下所有的 csv 文件csv_files = [file for file in os.listdir(folder_path) if file.endswith('.csv')]# 遍历每个 csv 文件for csv_file in csv_files:file_path = os.path.join(folder_path, csv_file)# 读取 csv 文件df = pd.read_csv(file_path)# 检查关键词列是否存在if keyword_column in df.columns:# 获取关键词列的值并去除换行符和制表符keywords = df[keyword_column].astype(str).str.replace(r'\n|\t', '', regex=True).tolist()# 将关键词添加到列表中keyword_list.extend(keywords)# 去除空字符串keyword_list = [keyword for keyword in keyword_list if keyword]return keyword_list# 提取关键词
# result_keywords = extract_keywords(folder_path, keyword_column)
# 打印结果
# print("提取的关键词列表:")
# print(result_keywords)def extract_keywords_from_json(categories_path, keyword_key):keyword_list = []json_files = [file for file in os.listdir(categories_path) if file.endswith('.json')]for json_file in json_files:file_path = os.path.join(categories_path, json_file)with open(file_path, 'r',encoding="utf-8") as f:data = json.load(f)for item in data:if keyword_key in item:keywords = item[keyword_key]if isinstance(keywords, str):# 替换关键词中的换行符和制表符keywords = keywords.replace('\n', '').replace('\t', '')keyword_list.append(keywords)elif isinstance(keywords, list):for keyword in keywords:# 替换关键词中的换行符和制表符keyword = keyword.replace('\n', '').replace('\t', '')keyword_list.append(keyword)keyword_list = [keyword.strip() for keyword in keyword_list if keyword.strip()]return keyword_list
categories_keywords = extract_keywords_from_json(categories_path, keyword_column)

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

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

相关文章

代码随想录Day21 | Leetcode216 组合总和III、Leetcode17 电话号码的字母组合

一、第一题 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9 每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。示例 1: 输入: k 3, n 7 输出: [[1,…

信息熵、KL散度、交叉熵、互信息、点互信息

信息熵 信息量 信息量是对信息的度量,衡量事件的不确定性,越小概率的事件发生了产生的信息量越大。我们应该用什么形式的函数表达信息量呢?除了随着概率增大而减少,这个函数还有具有以下性质: 如果有两个事件x和y彼…

如何定制聊天机器人,使用 Chatopera 云服务

在人工智能时代,Chatopera 相信,再小的个体,也有自己的聊天机器人。过去定制聊天机器人服务成本高、周期长,Chatopera 云服务重新定义聊天机器人。Chatopera 云服务于 2018 年 11 月 8 日上线,提供安全、稳定可靠的定制…

STM32标准库——(18)Unix时间戳、BKP备份寄存器、RTC实时时钟

1.Unix时间戳 1.1 简介 32位有符号数所能表示的最大数字是2^32/2-1这个数是21亿多,这其实是有溢出风险的,因为目前到2023年时间戳已经计到16亿了,32位有符号数的时间戳会在2038年的1月19号溢出,64位的时间戳能存储的时间范围非常…

C++对象模型剖析(六)一一Data语义学(三)

Data 语义学(三) “继承” 与 Data member 上期的这个继承的模块我们还剩下一个虚拟继承(virtual inheritance)没有讲,现在我们就来看看吧。 虚拟继承(Virtual Inheritance) 虚拟继承本质就是…

Linux笔记--make

使用上一节的 main.c、add.c、sub.c文件进行编译,编译的过程有很多步骤,如果要重新编译,还需要再重来一遍,能不能一步完成这些步骤?将这些步骤写到makefile文件中,通过make工具进行编译 一个工程中的源文件不计其数&a…

java 获取项目内的资源/配置文件

【getResourceAsStream】是java中用于获取项目内资源的常用方法,能够返回一个数据流,从而允许我们读取指定路径下的资源文件。这个方法可以用来读取各种类型的资源文件,包括但不限于文本文件、图像文件、配置文件等。 要使用getResourceAsStr…

高端相亲婚恋平台有哪些?分享五款高端靠谱相亲交友软件

如今市场上的相亲软件越来越多,但很少有人能找到自己心仪的相亲软件。在选择相亲软件时,大家最看重的就是安全性和真实性,因此我想向大家分享几款我用过且觉得可靠的高端相亲软件,希望能得到你们的认可。 1、丛丛 这是我用的最久的…

Nginx正反向代理

需求 为了降低成本并提高效率,考虑对华为云服务器的网络架构进行重构。 将原有的十一台云服务器公网IP整合为一台,部署 Nginx 作为公网服务器,并引入负载均衡器来分发流量。 Nginx正向代理 什么是正向代理? 正向代理&#xff…

【[STM32]标准库-自定义BootLoader】

[STM32]标准库-自定义BootLoader BootloaderBootloader的实现BOOTloader工程APP工程 Bootloader bootloader其实就是一段启动程序,它在芯片启动的时候最先被执行,可以用来做一些硬件的初始化或者用作固件热更新,当初始化完成之后跳转到对应的…

LeetCode 热题 100 | 图论(二)

目录 1 基础知识 1.1 什么是拓扑排序 1.2 如何进行拓扑排序 1.3 拓扑排序举例 2 207. 课程表 3 210. 课程表 II 菜鸟做题,语言是 C 1 基础知识 1.1 什么是拓扑排序 含义:根据节点之间的依赖关系来生成一个有序的序列。 应用&#xff1a…

12:Logstash|Web日志实时分析

Logstash|Web日志实时分析 logstashlogstash工作结构安装Logstash编写logstash配置文件步骤一:codec类插件插件帮助手册Logstash input插件步骤一:file模块插件filter grok插件Web日志实时分析部署beats与filebeat步骤一:filter grok模块插件logstash 一个数据采集、加工处…

Ubuntu22.04系统 安装cAdvisor提示找不到 CPU 的挂载点错误解决办法。

如果我们在安装cAdvisor时容器启动不起来 查看日志如下图所示 1、查看cgroup文件系统是v2 还是 v1 mount | grep cgroup 如图所示我的是v2 , cAdvisor 目前的最新版本(v0.39.0)仍然只支持 cgroup v1,不支持 cgroup v2。因此&#…

闫震海:腾讯音乐空间音频技术的发展和应用 | 演讲嘉宾公布

一、3D 音频 3D 音频分论坛将于3月27日同期举办! 3D音频技术不仅能够提供更加真实、沉浸的虚拟世界体验,跨越时空的限制,探索未知的世界。同时,提供更加丰富、立体的情感表达和交流方式,让人类能够更加深入地理解彼此&…

Python 批量提取pdf/word中的图片,并生成markdown文档

from sdk.utils.util_class import PathParser from sdk.temp.temp_supports import IsSolution, DM 这些全是自定义的工具包,自己去其他文章下找 # !/usr/bin/python3 # -*- coding:utf-8 -*- """ author: JHC000abcgmail.com file: demo.py time:…

做抖店月入百万还是会亏损?珠珠来告诉你,做抖店水到底有多深?

我是电商珠珠 抖店的热度一直只高不低,所以很多想要做的新手不知道抖店水的深浅,就一股脑的去做了。结果又是被扣保证金,又是被判定无货源违规的,最后灰头土脸的关了店。那些说做了十万十几万的,几百万的难道都是假的…

Windows主机巡检vbs脚本

’ Windows主机巡检脚本 ’ 获取主机名称 Set objNetwork CreateObject(“WScript.Network”) strComputer objNetwork.ComputerName ’ 获取磁盘信息 Set objWMIService GetObject(“winmgmts:\” & strComputer & “\root\cimv2”) Set colDisks objWMISer…

在三个el-form-item中的el-radio的值中取一个发送给后端怎么获取

问: 请问,这段代码怎么获取:无策略,策略1,策略2的值? 回答: 问: 三个里面只可以选中一个吗? 回答:

应对求职高峰:金三银四必备问答与大厂模板,成功职场攻略!

三四月是求职的黄金季节,很多设计师会选择在这个时候准备作品集。一个视觉精美、有条不紊的作品集,无疑是走向大厂的敲门砖。但是我问了一圈优秀社区的朋友,发现大家或多或少都遇到过问题。今天我整理了群里的高频问题,附上了解决…

[GXYCTF2019]BabyUpload1 -- 题目分析与详解

目录 一、题目分析 1、判断题目类型: 2、上传不同类型的文件进行测试: 二、题目详解 1、写出.htaccess文件: 2、.htaccess 文件配合 .jpg 上传: 3、利用 中国蚁剑/中国菜刀 获取flag: 一、题目分析 1、判断题目…