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

如何移除Python DataFrame列值中的字符串部分?以时长列为例

移除DataFrame中电影时长列的'min'字符串并转为数值类型

针对你需要清洗电影时长列的需求,这里有几种简洁高效的方法,处理后可以直接将列转为数值类型,满足线性回归分析的要求:

方法1:直接替换字符串(适合格式固定的场景)

如果所有数据都是'XX min'的固定格式,直接用str.replace去掉' min'后缀,再转为整数:

import pandas as pd

# 假设DataFrame名为df,目标列名为'movie_duration'
df['movie_duration'] = df['movie_duration'].str.replace(' min', '', regex=False).astype(int)

regex=False参数可以避免正则表达式的额外开销,提升处理速度。

方法2:提取数字(格式有波动时更稳健)

如果数据格式偶尔有变化(比如空格数量不一致、额外字符),用正则提取连续数字的方式更可靠:

df['movie_duration'] = df['movie_duration'].str.extract('(\d+)', expand=False).astype(int)

(\d+)会匹配字符串中所有连续的数字序列,提取后直接转为整数类型。

方法3:分割字符串取数字部分

另一种直观的方式是按空格分割字符串,取分割后的第一个元素:

df['movie_duration'] = df['movie_duration'].str.split().str[0].astype(int)

这种方法同样适合固定格式的场景,代码可读性较高。

处理完成后,可以用print(df.dtypes)检查该列是否已转为int或float类型,确保符合后续线性回归的数据分析要求。

内容的提问来源于stack exchange,提问作者Archit Chawla

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 02:35:34