【问题标题】:How to select column values which start from specific patterns in Pandas data frame? [duplicate]如何在 Pandas 数据框中选择从特定模式开始的列值? [复制]
【发布时间】:2018-06-27 22:16:09
【问题描述】:

我有一个如下的熊猫数据框。此数据为期一个月。我需要选择从 ABC 开始的设备。我也需要获取我的数据框。 (作为我的预期输出)。我该怎么做?

Time Stamp              Id  Latitude    Longitude  Device
01/10/2016 15:22:51:700 1      23        50        ABC (aaa)
01/10/2016 16:28:08:026 1      23        50        ABC (aaa)
01/10/2016 16:28:09:026 1      12        45        ABC (bae)
02/10/2016 19:00:08:026 2      23        50        TTT (ff)
02/10/2016 20:28:08:026 1      23        50        GGG (lll)
03/10/2016 19:00:08:000 2      23        50        ABC (zzz)
03/10/2016 01:02:33:123 2      23        50        NNN (gg)
03/10/2016 06:15:08:500 1      23        50        KKK (yyy)
03/10/2016 10:01:07:022 3      28        88        ABC (bae)
......
......
31/10/2016 13:09:17:044 1      33        80        ABC (bae)

我的预期输出是:

 Time Stamp             Id  Latitude    Longitude  Device
01/10/2016 15:22:51:700 1      23        50        ABC (aaa)
01/10/2016 16:28:08:026 1      23        50        ABC (aaa)
01/10/2016 16:28:09:026 1      12        45        ABC (bae)
03/10/2016 19:00:08:000 2      23        50        ABC (zzz)
03/10/2016 10:01:07:022 3      28        88        ABC (bae)
......
......
31/10/2016 13:09:17:044 1      33        80        ABC (bae)

【问题讨论】:

  • 与此问题相关的其他答案不是我想要的。这些答案对我没有帮助。

标签: python pandas dataframe


【解决方案1】:

试试这个:df[df.Device.str.startswith('ABC')]

使用pandas,您可以使用series.str 来利用几个有用的函数来处理字符串。

Series.str.startswith,我上面展示的那个,是选择(返回布尔值)以特定模式开头的索引。

顺便说一句,使用contains^ 的答案基本上是一样的,但是它不是使用pandas 提供的函数,而是使用正则表达式来定义输入的第一个字符的模式字符串。

【讨论】:

  • @Melchia 什么?这不是答案吗?你不能是认真的。
  • 你应该解释解释你的答案。完成后,我将删除我的评论和投票。
  • @Melchia。好吧,听起来很公平。我展开了。
【解决方案2】:

假设您的数据框名为“df”,如何使用 pandas.Series.str 中的正则表达式匹配工具:

df[df['Device'].str.contains('^ABC.*')]

【讨论】:

  • 嗨,当我选择设备“^Apple iPhone 6 (A1586)”时,我得到了空数据框。我确实准确了你的代码。为什么我的df是空的? (我只需要这个设备)
猜你喜欢
  • 2018-12-02
  • 2020-01-10
  • 2015-05-03
  • 2020-07-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-03
  • 2020-10-13
相关资源
最近更新 更多