1 回答

TA貢獻1820條經(jīng)驗 獲得超9個贊
關(guān)鍵是決定什么決定一個值是一個名字,什么不是。
從您的示例中,似乎'Penelope Deans','Corinne M. Percell'和'Tereasa T.'是名稱,而'1/1/2020'不是(因為它有數(shù)字和斜杠),'Digital Marketer at XXX'也不是,因為它遵循模式<namelike> at <namelike>。
請注意,根據(jù)這些規(guī)則'John at Smith'也不會是名稱。但是由于“at”在英語中不是一個普通的貴族助詞,它應(yīng)該可以工作,而且您并不希望專門涵蓋外國名稱(即使那樣,名稱中的“at”也很少見)。
使用正則表達式的 Python 解決方案:
import pandas as pd
lst = [
'Penelope Deans', '1/1/2020', 'Digital Marketer at XXX', 'Corinne M. Percell',
'1/1/2020', 'Tereasa T.', 'Licensed Real Estate at YYY'
]
df = pd.DataFrame(lst)
df = df[df[0].str.match('^((?! at )[A-z\s\.])+$')]
print(df)
結(jié)果:
0
0 Penelope Deans
3 Corinne M. Percell
5 Tereasa T.
添加回答
舉報