当前位置: 首页 > 知识库问答 >
问题:

如何从数据帧[duplicate]中筛选包含字符串模式的行

陆涵畅
2023-03-14

假设Python中有一个如下所示的数据帧:

df = pd.DataFrame({'vals': [1, 2, 3, 4], 'ids': [u'aball', u'bball', u'cnut', u'fball']})

或者,以表格形式:

ids    vals
aball   1
bball   2
cnut    3
fball   4

如何筛选包含关键字“ball”的行?例如,输出应为:

ids    vals
aball   1
bball   2
fball   4

共有3个答案

宦树
2023-03-14
>>> mask = df['ids'].str.contains('ball')    
>>> mask
0     True
1     True
2    False
3     True
Name: ids, dtype: bool

>>> df[mask]
     ids  vals
0  aball     1
1  bball     2
3  fball     4
黄兴业
2023-03-14
df[df['ids'].str.contains('ball', na = False)] # valid for (at least) pandas version 0.17.1

逐步说明(从内到外):

  • df['id']选择数据帧的id列(从技术上讲,对象df['id']的类型为熊猫。系列代码
  • df['id']. str允许我们将矢量化的字符串方法(例如,low包含)应用到Series
  • df['id'].str.contains('ball')检查Series的每个元素,以确定元素值是否具有字符串'ball'作为子字符串。结果是一系列布尔值,表示关于“球”子串的存在的TrueFalse
  • df[df['id'].str.contains('ball')]将布尔掩码应用到数据框,并返回包含适当记录的视图。
  • na=False从考虑中删除NA/NaN值;否则可能返回ValueError。

闾丘朗
2023-03-14
In [3]: df[df['ids'].str.contains("ball")]
Out[3]:
     ids  vals
0  aball     1
1  bball     2
3  fball     4
 类似资料:
  • 我需要从Pandas数据框索引中过滤包含字符串模式的行。 我发现了下面的示例:如何从熊猫数据帧中筛选包含字符串模式的行,其中数据帧使用df[df[“col”].str.contains()]进行过滤,这在本示例中效果很好。 在本例中,如果我将列id复制到索引,我可以使用df.index.str.contains(ball),这也可以正常工作。 但是,当我使用df时。指数str.contains(“

  • 本文向大家介绍在 JavaScript 中包含唯一字符的筛选字符串,包括了在 JavaScript 中包含唯一字符的筛选字符串的使用技巧和注意事项,需要的朋友参考一下 问题 我们需要编写一个 JavaScript 函数来接受一个字符串 str。我们的函数应该构造一个只包含输入字符串中唯一字符的新字符串,并删除出现的所有重复字符。 示例 以下是代码- 输出结果 以下是控制台输出-

  • 我使用的是Spark 1.3.0和Spark Avro 1.0.0。我从存储库页面上的示例开始工作。以下代码运行良好 但是如果我需要查看doctor字符串是否包含子字符串,该怎么办?因为我们是在字符串中编写表达式。我该怎么做“包含”?

  • 我想使用条件筛选数据集。我尝试使用.isin()函数,但在筛选np.array浮点列表时得到了一个空数据帧。这是我的密码 我在绝对差异btw公式列中搜索的值实际上是存在的,因为当我运行df[15:25]时,我得到了这个 那么,我如何使用.isin()函数或任何条件语句来实现它呢。目标是用0.1到0.9范围内的df['Absolute Diff btw formulas']值打印数据帧。谢谢

  • 我有2个数据帧,我需要从2个数据帧中分割包含字符串和浮点的值,分割应该避免字符串,只在浮点上分割。 DF1 DF2 下面这行代码是我写的 但是我得到了下面的错误信息。 TypeError:/:“str”和“str”的操作数类型不受支持 最终DF应该是这样的 谢谢你的支持

  • 现在假设用户enterd AAA-222 结果将是 ps.拆分的部分应该包括空格。