首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python中的数据抽取

Python中的数据抽取
EN

Stack Overflow用户
提问于 2022-05-08 19:51:36
回答 1查看 91关注 0票数 0

我得到了一个由三列组成的数据集。一个列有事务信息,一个列有存储号,另一个列有节。我的目标是使用实体提取从事务信息列中提取300个不同商店的存储号。我的思考过程是制作类似于公司如何使用字库搜索关键词的简历,因为我已经在一个单独的专栏中有商店编号。我将.csv文件读入我的程序,并将存储编号存储在自己的数组中。我试图找出如何在事务信息列中搜索这些商店号。

目前为止的代码:

代码语言:javascript
复制
import pandas as pd
import numpy as np

file = pd.read_csv(r'C:\Users\cspea\Desktop\assignment.csv')
print(file)

store_number_array = file['store_number'].to_numpy()
print(store_number_array)

样本数据集(以.csv格式):

代码语言:javascript
复制
transaction_descriptor,store_number,dataset
DOLRTREE 2257 00022574 ROSWELL,2257,train
AUTOZONE #3547,3547,train
TGI FRIDAYS 1485 0000,1485,train
BUFFALO WILD WINGS 003,3,train
J. CREW #568 0,568,train

任何提示都将不胜感激。(谢谢您的时间和提前提供的帮助:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-08 20:30:40

试试这个:

代码语言:javascript
复制
df['c'] = df['transaction_descriptor'].apply(lambda x: (df[df['transaction_descriptor'].str.contains(x)]['store_number']))[0]
for index,row in df.loc[df['c'].isna(),:].iterrows():
    test_=df.loc[index,'store_number']
    test=df.loc[index,'transaction_descriptor']
    result=[s for s in test.split() if str(test_) in s]
    
    df.loc[index,'c']=result
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72164620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档