当前目录下的excel文件的两列内容的相似度比较

-- coding: utf-8 --**

from sklearn.feature_extraction.text import CountVectorizer

from sklearn.metrics.pairwise import cosine_similarity

import numpy as np

import pandas as pd

import os

获取当前目录

current_dir = os.getcwd()

获取当前目录下所有xlsx文件名

xlsx_files = [file for file in os.listdir(current_dir) if file.endswith(".xlsx")]

打印xlsx文件名

for file in xlsx_files:

print(file)

读取Excel文件

excel_file = file

data = pd.read_excel(excel_file)

提取第3列和第5列的值

column3_values = data.iloc[:, 1] # 第3列的值

column5_values = data.iloc[:, 3] # 第5列的值

打印提取的值

print("第3列的值:")

print(column3_values)

print("\n第5列的值:")

print(column5_values)

print(len(column3_values))

print(len(column5_values))

res=[]

# 两段话

for i in range(len(column3_values)):

创建计数向量器

vectorizer = CountVectorizer().fit_transform([column3_values[i], column5_values[i]])

计算余弦相似度

cosine_sim = cosine_similarity(vectorizer)

提取余弦相似度值

similarity_value = cosine_sim[0][1]

if similarity_value>0.3:

res.append("正确")

elif similarity_value>0.05 and similarity_value<0.3:

res.append("部分正确")

else:

res.append("错误")

res.append(similarity_value)

print("两段话的余弦相似度:", similarity_value)

指定txt文件名

txt_file =excel_file.replace(".xlsx","")+".txt"

将列表逐行写入txt文件

with open(txt_file, 'w') as f:

for item in res:

f.write("%s\n" % item)

print("内容已写入到", txt_file)

相关推荐
东方佑2 小时前
基于FastAPI与LangChain的Excel智能数据分析API开发实践
langchain·excel·fastapi
许泽宇的技术分享2 小时前
当Excel遇上大语言模型:ExcelAgentTemplate架构深度剖析与实战指南
语言模型·架构·excel
gihigo19983 小时前
基于MATLAB的Excel文件批量读取与循环处理
matlab·excel
CodeCraft Studio13 小时前
Excel处理控件Aspose.Cells教程:使用 Python 将 HTML 转换为 Excel
python·html·excel·aspose·aspose.cells·html转excel
Leo6553513 小时前
Excel 读取阶段就去掉换行
excel
小镇学者14 小时前
【PHP】利用 xlswriter 扩展导出的Excel文件报错问题
php·excel
程序员杰哥15 小时前
Pytest与Unittest测试框架对比
自动化测试·软件测试·python·测试工具·测试用例·excel·pytest
cehuishi952715 小时前
excel中关联word邮件合并使用
word·excel·批量打印·邮件合并
曾令胜1 天前
excel导出使用arthas动态追踪方法调用耗时后性能优化的过程
spring·性能优化·excel
我命由我123451 天前
Excel - Excel 列出一列中所有不重复数据
经验分享·学习·职场和发展·word·powerpoint·excel·职场发展