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

如何对CSV文件中同一名称对应的数据行进行分组展示?

按CSV指定列分组展示数据(统一名称格式)

针对你需要将CSV中column2列相同名称的行分组展示的需求,同时处理名称中存在的标点差异(如vel.和vel视为同一名称),可以用以下两种方法实现:

方法1:使用Pandas(推荐,适合数据量较大的情况)

Pandas是Python的数据分析库,处理分组操作非常便捷。

  1. 先安装Pandas(如果未安装):
pip install pandas
  1. 编写处理代码:
import pandas as pd

# 读取CSV文件,适配多空格分隔的格式
df = pd.read_csv('your_file.csv', sep='\s+')

# 统一column2的名称格式:去除所有标点符号并去除首尾空格
df['column 2'] = df['column 2'].str.replace(r'[^\w\s]', '', regex=True).str.strip()

# 按处理后的名称分组并输出
for group_name, group_data in df.groupby('column 2'):
    # 逐行输出分组内的数据
    for _, row in group_data.iterrows():
        print(f"{row['column 1']} --   {group_name} --  {row['column 3']}")
    # 分组之间添加空行分隔
    print()

方法2:纯Python实现(无需额外安装库)

如果不想依赖第三方库,可以用Python标准库完成:

import csv
from collections import defaultdict

# 初始化分组存储结构
name_groups = defaultdict(list)

# 读取并处理CSV文件
with open('your_file.csv', 'r', encoding='utf-8') as file:
    # 适配多空格分隔的读取方式
    csv_reader = csv.reader(file, delimiter=' ', skipinitialspace=True)
    # 跳过表头行
    next(csv_reader)
    
    for row in csv_reader:
        # 处理名称:去除点号并去空格(可根据实际需求调整标点处理规则)
        cleaned_name = row[1].replace('.', '').strip()
        # 将行数据加入对应分组
        name_groups[cleaned_name].append(row)

# 遍历分组并输出结果
for name, rows in name_groups.items():
    for row in rows:
        print(f"{row[0]} --   {name} --  {row[2]}")
    print()

说明

  • 两种方法都会先统一column2的名称格式(比如把vel.转为vel,h.转为h),确保同名数据被正确分组。
  • 输出格式完全匹配你给出的示例,分组之间用空行分隔。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 19:46:20