python - 删除 Pandas 列中每一行的空格后的字符

标签 python pandas

我有以下数据框:

import pandas as pd
import io
temp=u"""probe,genes,sample1
1415777_at,Pnliprp1 +OX(M6),20
1415777_at,Pllk +C6,20
1415884_at,Cela3b,47"""
df = pd.read_csv(io.StringIO(temp))
df

看起来像这样:

Out[23]:
        probe             genes  sample1
0  1415777_at  Pnliprp1 +OX(M6)       20
1  1415777_at          Pllk +C6       20
2  1415884_at            Cela3b       47

我想做的是在 gene 列中删除空格后的每个字符 在每一行。所以它看起来像:

        probe             genes  sample1
0  1415777_at           Pnliprp1      20
1  1415777_at               Pllk      20
2  1415884_at             Cela3b      47

如何实现?

最佳答案

我会使用向量化的 str 函数:

>>> df["genes"] = df["genes"].str.split().str[0]
>>> df
        probe     genes  sample1
0  1415777_at  Pnliprp1       20
1  1415777_at      Pllk       20
2  1415884_at    Cela3b       47

关于python - 删除 Pandas 列中每一行的空格后的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37177157/

相关文章:

python - 将类分配给变量

python - 根据 for 循环中的迭代次数向列表添加不同的值

python - 使用 Groupby Pandas DataFrame 手动计算 STD

python - 将 2 列数据框转换为多级分层数据框

python - 如何从数据框中提取列并将其附加到行,同时保持其他列完好无损

python - 如何使用 pandas 中其他列的 .size() 值创建新列?

python - 使用字段排序 mptt 树

python - 读取 python 中的最后一行后返回到文件的开头

python - 在 pygmo 中使用队列进行函数评估

python - 为什么我的 Python 函数不返回结果?