python - 如何从DataFrame中的名称中提取首字母
问题描述
我想从用户名中提取首字母,然后用首字母替换名称
s = pd.DataFrame(['Robert Flitz', 'Hans Malek', 'Marek J. Beer'])
当我尝试使用此功能时
def initials(name):
init = ""
for n in name.str.split():
for i in n:
init+=i[0]
return init
它返回单个字符串
initials(s[0])
'RFHMMJB'
我想看起来像
'RF'
'HM'
'MJB'
有任何想法吗?
解决方案
您还可以使用正则表达式:
s[0].str.replace('[^A-Z]', '')
0 RF
1 HM
2 MJB
推荐阅读
- python - Django:检测查询中使用了哪些模型
- blockchain - 警告:源文件中未提供 SPDX 许可证标识符
- c# - 在 C# 中包装一个包含固定大小 C 数组的结构
- r - 滞后不喜欢趋势
- sql - .NET Core - ExecuteSqlRaw - 最后插入的 id?
- html - 使用溢出向容器中的表添加行:自动增加容器的高度
- c# - 我如何检测 Windows 何时启动并使用 .Net / C# 捕获它?
- c# - 我如何显示我的列表
或 ComboBox 中的替代方案?(C#) - arrays - ReactJS - 如何将状态数据和函数从一个功能组件传递到另一个组件?
- r - 来自 htest 对象的索引值?