Python3.6下用Pandas导入CSV、筛选分析并转制表符分隔导出
Pandas实现CSV导入、多列筛选并导出为制表符分隔文件
嘿,完全没问题!这事儿在Pandas里操作起来超直观,我把整个流程拆成清晰的步骤,重点帮你搞定制表符分隔导出的关键设置:
步骤1:导入Pandas并读取原始CSV文件
先确保你已经安装了Pandas(如果没装的话,先跑pip install pandas),然后读取你的Data.csv:import pandas as pd # 读取原始逗号分隔的CSV文件 df = pd.read_csv('Data.csv')步骤2:用loc方法筛选目标多列
假设你需要保留的列是['用户ID', '订单金额', '交易日期'](替换成你的实际列名),用loc可以精准选中所有行和指定列:# 格式:df.loc[行筛选条件, 列名列表],这里冒号表示选中所有行 filtered_df = df.loc[:, ['用户ID', '订单金额', '交易日期']]要是你还需要同时筛选行(比如只保留订单金额大于100的记录),可以改成:
filtered_df = df.loc[df['订单金额'] > 100, ['用户ID', '订单金额', '交易日期']]步骤3:导出为制表符(\t)分隔的文件
敲黑板!这是你要的核心设置:用to_csv方法时,把sep参数设为'\t',同时建议关闭索引列导出(避免多余的序号列):# 导出为制表符分隔的文件,后缀用.tsv更规范(也可以用.csv,但.tsv更直观) filtered_df.to_csv('筛选结果.tsv', sep='\t', index=False, encoding='utf-8')参数说明:
sep='\t':强制使用制表符作为分隔符index=False:不导出Pandas自动生成的索引列encoding='utf-8':避免中文等非ASCII字符出现乱码
完整可复制代码
import pandas as pd # 1. 读取原始CSV df = pd.read_csv('Data.csv') # 2. 筛选目标列(替换成你的实际列名) target_columns = ['列名1', '列名2', '列名3'] filtered_df = df.loc[:, target_columns] # 3. 导出为制表符分隔文件 filtered_df.to_csv('筛选结果.tsv', sep='\t', index=False, encoding='utf-8')
如果后续还有其他分析需求(比如数据聚合、缺失值处理、统计计算等),直接在filtered_df上完成操作后,重复第三步的导出代码即可,同样用sep='\t'就能保持制表符分隔的格式。
内容的提问来源于stack exchange,提问作者Charlie
相关产品推荐
相关产品推荐

