每日一题23:统计文本中单词出现的次数

一、每日一题

解答:

python 复制代码
import pandas as pd
def count_occurrences(files: pd.DataFrame) -> pd.DataFrame:
    bull_cnt = len(files[files['content'].str.contains(r'\sbull\s')])
    bear_cnt = len(files[files['content'].str.contains(r'\sbear\s')])
    res_df = pd.DataFrame(
        {
            'word': ['bull', 'bear'],
            'count': [bull_cnt, bear_cnt]
        }
    )
    return res_df

题源:Leetcode

二、 总结

files['content'].str.contains(r'\sbull\s'):

  • 使用 str.contains() 方法来查找 content 列中包含匹配正则表达式 r'\sbull\s' 的行。
  • 正则表达式**r'\sbull\s'** 寻找以空白字符(空格)开头和结尾的 "bull" 字符串:
    • \s 表示空白字符(比如空格、制表符等)。
    • 因此,r'\sbull\s' 匹配的是整个单词 "bull",而不会匹配诸如 "bulldog" 或 "bullish" 这样的部分匹配。

2024.5.26

相关推荐
蓝帆傲亦2 分钟前
代码革命!我用Claude Code 3个月完成1年工作量,这些实战经验全给你
jvm·数据库·oracle
亓才孓6 分钟前
[JDBC]事务
java·开发语言·数据库
CHU7290358 分钟前
直播商城APP前端功能全景解析:打造沉浸式互动购物新体验
java·前端·小程序
PD我是你的真爱粉11 分钟前
FastAPI使用tortoiseORM
数据库·fastapi
侠客行03177 小时前
Mybatis连接池实现及池化模式
java·mybatis·源码阅读
蛇皮划水怪7 小时前
深入浅出LangChain4J
java·langchain·llm
剩下了什么8 小时前
MySQL JSON_SET() 函数
数据库·mysql·json
山峰哥8 小时前
数据库工程与SQL调优——从索引策略到查询优化的深度实践
数据库·sql·性能优化·编辑器
较劲男子汉8 小时前
CANN Runtime零拷贝传输技术源码实战 彻底打通Host与Device的数据传输壁垒
运维·服务器·数据库·cann
老毛肚8 小时前
MyBatis体系结构与工作原理 上篇
java·mybatis