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

如何用Pandas将CSV中‘File Size’列的带单位值转为可比较数值?

解决Pandas中文件大小列的数值转换问题

1. 读取CSV文件

先导入Pandas并读取你的文件:

import pandas as pd

# 替换成你的CSV文件路径
df = pd.read_csv('your_file.csv')

2. 编写转换函数统一数值单位

你可以把所有大小值统一转换为字节(最精确),或者转换为MB/GB,以下是两种实现:

转换为字节

def convert_to_bytes(size_str):
    # 拆分数值与单位,例如将'1.2 GB'拆分为['1.2', 'GB']
    num, unit = size_str.split()
    num = float(num)
    # 定义各单位到字节的转换系数
    unit_map = {
        'MB': 1024 ** 2,
        'GB': 1024 ** 3
    }
    return num * unit_map[unit]

# 生成新的数值列
df['File Size (Bytes)'] = df['File Size'].apply(convert_to_bytes)

转换为MB(适合直观比较)

def convert_to_mb(size_str):
    num, unit = size_str.split()
    num = float(num)
    if unit == 'GB':
        return num * 1024
    elif unit == 'MB':
        return num

df['File Size (MB)'] = df['File Size'].apply(convert_to_mb)

3. 数值比较与筛选

转换完成后就可以直接进行筛选操作,比如找出大于1000MB的文件:

large_files = df[df['File Size (MB)'] > 1000]

适合初学者的Pandas学习资源推荐
  • Pandas官方入门指南:官方的Getting Started板块,从基础的文件读写、数据清洗到简单分析,内容权威且贴合实际需求。
  • 实战导向的视频/文字课程:选择以真实案例为主的课程,跟着完成从数据导入到输出分析结果的完整流程,快速掌握实用技巧。
  • 交互式练习平台:通过小任务巩固Pandas常用操作,比如列转换、数据筛选、分组统计等,即时反馈能帮你快速纠正错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 00:37:06