我有以下数据框:

   a    b             x  
0  id1  abc 123 tr    2  
1  id2  abd1 124 tr   6 
2  id3  abce 126 af   9 
3  id4  abe 128 nm    12 

从b列中,对于每一项,我需要在第一个空格之前提取子字符串.因此,我需要以下结果:

list_of_strings = [abc, abd1, abce, abe]

请告知

推荐答案

使用具有^\S+(锚定在字符串开头的非空格字符)和str.extract的正则表达式:

df['b'].str.extract(r'^(\S+)', expand=False)

输出:

0     abc
1    abd1
2    abce
3     abe
Name: b, dtype: object

有关列表,请访问:

list_of_strings = df['b'].str.extract(r'^(\S+)', expand=False).tolist()
# ['abc', 'abd1', 'abce', 'abe']

regex demo

Python-3.x相关问答推荐

如何将CSV或FDF数据解析到Python词典并注入到模板PDF表单中?

将Trio与基于线程的事件侦听器混合使用

Python:字典和列表:在列表字典中搜索子列表的有效方法

在循环访问XML中的多个层时,xml.etree.Elementree Python3解析器不起作用

pandas查找另一列中是否存在ID

按长度和字母数字对Pandas 数据帧列进行排序

Python-Django 设置 Pandas DataFrame 的多索引不会分组/合并最后一个索引

使用条件参数为 super() 调用 __init__

Python BeautifulSoup:在 Select 语句中排除其他标签

使用正确的数据类型时,使用 Cerberus 验证 JSON 架构会引发错误

为什么最简单的流光示例会出错?

预分配一个无列表

在带有 M1 芯片(基于 ARM 的 Apple Silicon)的 Mac 上安装较早版本的 Python(3.8 之前)失败

Jupyter Notebook - 在函数内绘图 - 未绘制图形

python 3.4版不支持'ur'前缀

AttributeError:LinearRegression 对象没有属性coef_

在没有时间的python中创建日期

从 IPython 重新加载 Python 扩展模块

警告:请使用 tensorflow/models 中的官方/mnist/dataset.py 等替代方案

Python pathlib 获取父级相对路径