我正在用一个包含公司信息的数据集来试验/学习Python。你知道吗
数据帧结构如下(这些是由记录组成的):
import pandas as pd
df = pd.DataFrame({'key': [111, 222, 333, 444, 555, 666, 777, 888, 999],
'left_name' : ['ET CETERA SYSTEMS', 'ODDS AND ENDS', 'MAXIMA COMPANY', 'MUSIC MANY',
'GRAPHIC MASTER', 'ARC SECURITY', 'MINDNSOLES', 'REX ENERGY', 'THESIS COMPANY'],
'right_name' : ['ET CETERA SYS', 'ODDSNENDS', 'MAX COMP', 'MUSICMANY', 'GRAPHIC MSTR',
'ARC SECU', 'MIND AND SOLES', 'REXX', 'THESIS COMP']})
print(df)
key left_name right_name
0 111 ET CETERA SYSTEMS ET CETERA SYS
1 222 ODDS AND ENDS ODDSNENDS
2 333 MAXIMA COMPANY MAX COMP
3 444 MUSIC MANY MUSICMANY
4 555 GRAPHIC MASTER GRAPHIC MSTR
5 666 ARC SECURITY ARC SECU
6 777 MINDNSOLES MIND AND SOLES
7 888 REX ENERGY REXX
8 999 THESIS COMPANY THESIS COMP
我的目标是比较每一对的缩写词。具体而言,如果由left_name
的初始字母串联形成的缩写字符串等于由right_name
的初始字母串联形成的缩写字符串,则返回1
的标志。否则,返回0
。你知道吗
例如,如果我们比较前两个缩写对,那么:
ECS == ECS
→1
OAE != O
→0
从视觉上看,我要查找的结果数据帧应该如下所示:
key left_name right_name name_flag
0 111 ET CETERA SYSTEMS ET CETERA SYS 1
1 222 ODDS AND ENDS ODDSNENDS 0
2 333 MAXIMA COMPANY MAX COMP 1
3 444 MUSIC MANY MUSICMANY 0
4 555 GRAPHIC MASTER GRAPHIC MSTR 1
5 666 ARC SECURITY ARC SECU 1
6 777 MINDNSOLES MIND AND SOLES 0
7 888 REX ENERGY REXX 0
8 999 THESIS COMPANY THESIS COMP 1
我想我的问题和这个问题密切相关:Upper case first letter of each word in a phrase
不幸的是,我无法对代码进行适当的修改以解决我的问题。任何额外的帮助都将不胜感激。你知道吗
输出:
或者
在函数中也起作用
试试这个:
这就行了
df
输出相关问题 更多 >
编程相关推荐