Python 替换未正确删除对象变量类型

Python 替换未正确删除对象变量类型,python,pandas,Python,Pandas,我试图删除第一个变量中值的“:30”部分。第一个变量数据类型是object 以下是First变量和计数的几个示例,忽略计数: 11a 211 7p 178 4p 127 2:30p 112 11:30a 108 1p 107 12p 105 9a 100 10p 85 2p 24 10:30a 12 6p 5 9:30a 2 9p

我试图删除
第一个变量中值的“:30”部分。
第一个变量数据类型是object

以下是
First
变量和计数的几个示例,忽略计数:

11a       211
7p        178
4p        127
2:30p     112
11:30a    108
1p        107
12p       105
9a        100
10p        85
2p         24
10:30a     12
6p          5
9:30a       2
9p          2
12:30a      2
8p          2
我编写了以下代码,运行时没有任何错误;但是,当我运行值计数时,它仍然以“:30”显示时间。
NewFirst
变量数据类型是int64。不太确定我在这里做错了什么

    bad_chars = ":30"
DF["NewFirst"] = DF.First.replace(bad_chars,'')
DF["NewFirst"].value_counts()
所需输出的
NewFirst
值如下:

11a       211
7p        178
4p        127
2p        112
11a       108
1p        107
12p       105
9a        100
10p        85
2p         24
10a        12
6p          5
9a          2
9p          2
12a        2
8p          2

您不应该在
bad\u chars
中的字符上循环。这将删除所有
3
0
字符,因此
10p
将变成
1p
,而
3a
将变成
a

您应该只替换整个
坏字符
字符串,而不使用循环

您还需要使用
.str
访问器

DF["NewFirst"] = DF["First"].str.replace(bad_chars,'')

谢谢,但是这段代码仍然没有改变输出,NewFirst变量仍然包含有“:30”的值。我还更新了我的帖子以反映您的代码。不要删除原始代码,现在我的答案没有任何意义,因为它指的是问题中不再出现的内容。我想您需要
.str
,我已经更新了答案。