【发布时间】:2020-09-10 15:16:43
【问题描述】:
我已阅读有关类似示例的各种其他问题;但是,我认为我的示例与此不同,足以提出一个新问题。
我有以下格式的数据框:
'Bob, Dole, 00001' '0.4'
'John, Smith, 00002' '0.2'
我想删除名称,只保留第一列中的 ID:
'00001' '0.4'
'00002' '0.2'
我是 Python 新手,我偶然发现了这段代码 sn-p 有效。首先,我将 Data Frame Dat 转换为 numpy A = Dat.to_numpy()。然后我可以使用以下方法删除名称部分:
import re
print(re.sub("[^0-9]", "", A[1,0]))
我只是不知道如何将它应用到整个数据框(不使用循环)。有没有更简单的方法来做到这一点?还是应该只使用 for 循环?
【问题讨论】:
-
您的示例 DataFrame 是 1 列还是 2 个单独的列?什么是列标题?一般你可以试试
df['col'] = df['col'].str.replace('\D', '') -
两个单独的列,带有一个行标题(因此每列都有一个标题)。这确实有效!谢谢!