两个文件汉语字段自动匹配问题
本帖最后由 Amgalang 于 2020-9-17 10:33 编辑各位鱼友大家上午好,
我是一个python新手,目前遇到了一个问题,希望大佬给予帮助。真心谢谢大家了。
具体问题是我有两个txt文件(文件A与文件B)
文件A有两个字段信息:
AAA 人生命
BBB []植物[]动物
文件B也有两个字段信息:
人,生命 00002086N
植物 00008019N
动物 00091019N
具体想法是,如果A与B两个文件中[]后的汉语对应,那么在文件A的两个字段后面新建相应的字段,提取并添加文件B中对应的数字编号。具体实现的效果是:
AAA 人生命 00002086N
BBB []植物[]动物 00008019N 00091019N
我目前拥有了些许的编程思维,但是动手能力较弱,恳请大家帮助,再次感谢,祝大家拥有美好的一天。 嚯,回答你的问题还要花费鱼币啊。那不看了 sunrise085 发表于 2020-9-17 09:50
嚯,回答你的问题还要花费鱼币啊。那不看了
抱歉,我以为是悬赏,第一次用到所以弄错了,一顿操作后终于改过来了,哈哈哈
希望您能给予解答,谢谢您。 可以这样实现
import pandas as pd
a=pd.read_csv('A.txt')
a['编号']=''
print(a)
b=pd.read_csv('B.txt')
print(b)
for i in range(len(b)):
for j in range(len(a)):
num = a.loc.find(b.loc)
if num>0:
num_temp=a.loc
a.loc=a.loc+num_temp+b.loc
print(a)
a.to_csv('C.txt',index=False)
疾风怪盗 发表于 2020-9-17 11:38
可以这样实现
谢谢您的帮助
第一、刚刚了解到pandas模块是python的excel,但是 我没能安装成功,呜呜....
第二、按照您的方法需要把文件B的内容修改一下,改成一行一个内容,但其实我在实验多内容的匹配,哈哈哈 我可能说的有点绕。我再试试pandas 谢谢您
本帖最后由 疾风怪盗 于 2020-9-17 17:46 编辑
Amgalang 发表于 2020-9-17 15:00
谢谢您的帮助
第一、刚刚了解到pandas模块是python的excel,但是 我没能安装成功,呜呜....
第二、按照 ...
这样可以么
import pandas as pd
a = pd.read_csv('A.txt', sep=':')
a['内容'] = ]
# print(a)
d = a['内容'].str.split('\[\]', expand=True).stack().reset_index(level=1, drop=True).rename('内容')
# print(d)
a = a.drop('内容', axis=1).join(d)
print(a)
b = pd.read_csv('B.txt', sep=':')
# print(b)
c = b['内容'].str.split(',', expand=True).stack().reset_index(level=1, drop=True).rename('内容')
# print(c)
b = b.drop('内容', axis=1).join(c)
print(b)
e = pd.merge(left=a, right=b, left_on='内容', right_on='内容')
print(e)
e.to_csv('C.txt', index=False)
本帖最后由 Amgalang 于 2020-9-17 19:46 编辑
疾风怪盗 发表于 2020-9-17 17:44
这样可以么
真心谢谢您了,完美解决,佩服 哈哈哈
不过 目前我还没能安装好 pandas{:5_100:}
Amgalang 发表于 2020-9-17 19:15
真心谢谢您了,完美解决,佩服 哈哈哈
不过 目前我还没能安装好 pandas
可以的话,我想和您交 ...
你这个手机号都随便放网上么。。。。。。。。容易被骗。。。。。。
我没空搞项目的,工作很忙的
你有问题就直接论坛上问吧
我这段时间还有点空,等回单位了就不会经常上论坛了 疾风怪盗 发表于 2020-9-17 19:20
你这个手机号都随便放网上么。。。。。。。。容易被骗。。。。。。
我没空搞项目的,工作很忙的
你有问 ...
已修改 好的 好的 哈哈哈
页:
[1]