暴力匹配(数据思维赛-安全文本信息抽取)

训练集有四列数据:

 id为序号,sentence_idx为语句的序号,words为从一条语句中解析出的单词,tag为每个word对应的tag标签。

 

test集给出前三列数据,求每一个word对应的tag数据。

 

经过观察,发现训练集和测试集有大量的重复数据,所以尝试使用硬匹配的方式给出一份数据:

复制代码
 1 import pandas as pd
 2 import time
 3 
 4 train_data = pd.read_csv('train.csv',converters={i: str for i in range(0, 100)})
 5 test_data = pd.read_csv('test.csv',converters={i: str for i in range(0, 100)})
 6 
 7 train_words = train_data['words'].values.tolist()
 8 train_tag = train_data['tag'].values.tolist()
 9 test_words = test_data['words'].values.tolist()
10 
11 pred=[]
12 time_start=time.time()
13 for i in range(len(test_words)):
14     if i%10000==0:
15         print("***结束查找 ",i,"")
16         time_end=time.time()
17         print("---执行了 ",time_end - time_start," 秒\n")
18         time_start=time.time()
19     x=test_words[i].lower()
20     if x in train_words:
21         j=train_words.index(x)
22         pred.append(train_tag[j])
23     else:
24         pred.append(str(0))
25     
26 test_data['tag']=pred
27 
28 #test_data = pd.DataFrame({'id': test_data['id'], 'tag': pred})
29 test_data.to_csv('result.csv', index=False)
复制代码

 

posted @   打铁老鱼  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示