You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新手技术问询:如何用Pandas查找含指定字符串的单元格位置

查找包含指定字符串的单元格位置

嗨,作为数据分析新手,用Python的pandas库来解决这个查找问题简直完美!我结合你的示例数据,一步步教你找到字符串"CAD 2.00"的位置:

第一步:准备你的数据

首先我们把你给出的示例数据转换成pandas的DataFrame(这是数据分析里常用的表格数据结构):

import pandas as pd

# 按照你的数据创建DataFrame
data = {
    'Price': [947.2, 129.3, 161.69],
    'Rate p/lot': [1.25, 2.1, 0.8],
    'Total Comm': ['CAD 1.25', 'CAD 1.25', 'CAD 2.00']
}
df = pd.DataFrame(data)

第二步:定位目标字符串

接下来我们写代码找到"CAD 2.00"的位置,代码逻辑很直观:

target_str = "CAD 2.00"

# 生成布尔掩码:每个单元格如果等于目标字符串就标记为True
match_mask = df.eq(target_str)

# 堆叠数据并筛选出所有匹配的位置
matched_positions = list(match_mask.stack()[match_mask.stack()].index)

# 提取第一个匹配的位置(你的示例里只有一个匹配项),转成元组
result = tuple(matched_positions[0]) if matched_positions else None

print(result)  # 输出结果:(2, 2)

代码逻辑解释

  • df.eq(target_str):生成一个和原表格一样大小的布尔表,符合条件的单元格会被标记为True
  • match_mask.stack():把列索引转换为二级行索引,这样我们能轻松筛选出所有True对应的位置
  • 最后我们把第一个匹配的位置转成元组,就得到了你预期的(2,2)(这里的索引是从0开始计数的,对应第三行第三列)

如果你的数据里有多个和目标字符串匹配的单元格,matched_positions会返回所有匹配的位置列表,你可以根据需求进一步处理~

内容的提问来源于stack exchange,提问作者Piyush S. Wanare

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 07:57:06