Pandas:如何消除值以特定字符结尾的行?

2024-10-01 07:14:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个pandas数据帧,如下所示:

mail = DataFrame({'mail' : ['adv@gmail.com', 'fhngn@gmail.com', 'foinfo@yahoo.com', 'njfjrnfjrn@yahoo.com', 'nfjebfjen@hotmail.com', 'gnrgiprou@hotmail.com', 'jfei@hotmail.com']})

看起来像:

^{pr2}$

我要做的是过滤掉(elimiante)所有列中的值以'@gmail.com网站'. 在


Tags: 数据comdataframepandasmailyahoogmailadv
2条回答

可以使用^{}并用~对布尔级数的结果求反:

mail[~mail['mail'].str.endswith('@gmail.com')]

产生:

^{pr2}$

Pandas还有许多其他的vectorised string operations,它们可以通过.str访问器访问。其中许多方法在Python自己的string方法中已经很熟悉了,但是come将内置于对NaN值的处理中。在

类型为str的列上有{a1},使用该列可以访问为单个str定义的标准函数:

[6]: mail['mail'].str.endswith('gmail.com')
      Out[6]:
0     True
1     True
2    False
3    False
4    False
5    False
6    False
Name: mail, dtype: bool

然后可以使用以下系列进行筛选:

^{pr2}$

如果列包含日期数据,则存在一个similar property ^{}来访问与日期/时间相关的属性。在

相关问题 更多 >