python读csv文件时指定行为表头或无表头的方法

yipeiwu_com5年前Python基础

pd.read_csv()方法中header参数,默认为0,标签为0(即第1行)的行为表头。若设置为-1,则无表头。示例如下:

(1)不设置header参数(默认)时:

df1 = pd.read_csv('target.csv',encoding='utf-8')
df1

(2)header=1时:

import pandas as pd
df2 = pd.read_csv('target.csv',encoding='utf-8',header=1)
df2
 

  

(3)header=-1时(可用于读取无表头CSV文件):

df3 = pd.read_csv('target.csv',encoding='utf-8',header=-1)
df3
 

 

PS:python 从 CSV 文件中删除表头

假设你有一个枯燥的任务,要删除几百 CSV 文件的第一行。也许你会将它们送入一个自动化的过程,只需要数据,不需要每列顶部的表头。可以在 Excel 中打开每个文件,删除第一行,并重新保存该文件,但这需要几个小时。让我们写一个程序来做这件事。该程序需要打开当前工作目录中所有扩展名为.csv 的文件,读取 CSV 文件的内容,并除掉第一行的内容重新写入同名的文件。这将用新的、无表头的内容替换CSV 文件的旧内容。

总的来说,该程序必须做到以下几点:

  • 找出当前工作目录中的所有 CSV 文件。
  • 读取每个文件的全部内容。
  • 跳过第一行,将内容写入一个新的 CSV 文件。

在代码层面上,这意味着该程序需要做到以下几点:

  • 循环遍历从 os.listdir()得到的文件列表,跳过非 CSV 文件。
  • 创建一个 CSV Reader 对象,读取该文件的内容,利用 line_num 属性确定要跳过哪一行。
  • 创建一个 CSV Writer 对象,将读入的数据写入新文件。针对这个项目,打开一个新的文件编辑器窗口,并保存为 removeCsvHeader.py。 

循环遍历每个 CSV 文件

程序需要做的第一件事情,就是循环遍历当前工作目录中所有 CSV 文件名的列表。让 removeCsvHeader.py 看起来像这样:

#! python3
# removeCsvHeader.py - Removes the header from all CSV files in the current
# working directory

import csv, os

os.makedirs('headerRemoved', exist_ok=True)

# Loop through every file in the current working directory.
for csvFilename in os.listdir('.'):
	if not csvFilename.endswith('.csv'):
		continue	# skip non-csv files

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现将json文件中向量写入Excel的方法

本文实例讲述了Python实现将json文件中向量写入Excel的方法。分享给大家供大家参考,具体如下: 有一个需要是将已经向量化的页面的数据中的向量写入Excel中用于展示,工作很简单...

django利用request id便于定位及给日志加上request_id

简介 在开发大型系统的时候,往往是进行微服务化,变成了多个系统之间的交互。快速迭代你会发现线上的系统很多很复杂,这时候一个用户请求过来会经过很多内部系统,如果这时候发生错误,我们去查看日...

利用pandas将numpy数组导出生成excel的实例

利用pandas将numpy数组导出生成excel的实例

上图 代码 # -*- coding: utf-8 -*- """ Created on Sun Jun 18 20:57:34 2017 @author: Bruce Lau...

python实现简单的计时器功能函数

本文实例讲述了python实现简单的计时器功能函数。分享给大家供大家参考。具体如下: 此函数通过python实现了一个简单的计时器动能: ''' Simple Timing Func...

Python中的一些陷阱与技巧小结

Python是一种被广泛使用的强大语言,让我们深入这种语言,并且学习一些控制语句的技巧,标准库的窍门和一些常见的陷阱。 Python(和它的各种库)非常庞大。它被用于系统自动化、web...