每日一题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

相关推荐
格调UI成品13 分钟前
DCS+PLC协同优化:基于MQTT的分布式控制系统能效提升案例
数据库·云边协同
叫我阿柒啊26 分钟前
Java全栈开发实战:从基础到微服务的深度解析
java·微服务·kafka·vue3·springboot·jwt·前端开发
凯尔萨厮43 分钟前
Java学习笔记三(封装)
java·笔记·学习
霸道流氓气质43 分钟前
Java开发中常用CollectionUtils方式,以及Spring中CollectionUtils常用方法示例
java·spring
失散131 小时前
分布式专题——5 大厂Redis高并发缓存架构实战与性能优化
java·redis·分布式·缓存·架构
通达的K1 小时前
Java实战项目演示代码及流的使用
java·开发语言·windows
David爱编程1 小时前
深入 Java synchronized 底层:字节码解析与 MonitorEnter 原理全揭秘
java·后端
索迪迈科技1 小时前
Protobuf 新版“调试表示为什么有链接?为什么会打码?我该怎么改代码?
java·log4j·apache
牵牛老人1 小时前
Qt C++ 复杂界面处理:巧用覆盖层突破复杂界面处理难题之一
数据库·c++·qt
a_blue_ice1 小时前
JAVA 面试 MySQL
java·mysql·面试