python - 从 pandas 数据框列值中删除句子的第一个单词

标签 python pandas dataframe

我有一个这样的数据框:

df:
col1      col2
 A        blue berry
 B        nice water bottle

我想从 col2 值中删除第一个单词,最终数据框将如下所示:

df1:
col1       col2
 A         berry
 B         water bottle

如何使用 pandas 以最有效的方式做到这一点

最佳答案

使用split通过第一个带有 n=1 的空格,然后通过索引选择第二个列表:

df['col2'] = df['col2'].str.split(n=1).str[1]
print (df)
  col1          col2
0    A         berry
1    B  water bottle

详细信息:

print (df['col2'].str.split(n=1))
0           [blue, berry]
1    [nice, water bottle]
Name: col2, dtype: object

如果性能很重要并且没有缺失值将解决方案转换为列表理解:

df['col2'] = [x.split(maxsplit=1)[1] for x in df['col2']]

关于python - 从 pandas 数据框列值中删除句子的第一个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54827245/

相关文章:

Python - Pandas - 展开/删除累计和

python - 打印数据框的行

python - 在 Python 中使用和关闭文件

python - 如何使用Python在Docker容器中获取主机ip?

python - 在pycharm中使用多处理时如何调试

python - 在 Pandas DF 行中查找最小日期并创建新列

python - PyQt5 端口 : how do I hide a window and let it appear at the same position

python - 根据索引和值条件选择 Pandas 系列的切片

python - pandas Dataframe 中 mode() 的输出不舒服

python - pandas groupby 方法实际上是如何工作的?