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

yipeiwu_com6年前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函数之作用域(python3.5)

1 基本概念 1.1 命名空间 (namespace) 命名空间是变量名到对象的映射(name -> obj)。目前大多数的命名空间以类似于python字典的形式实现,实现形式在未...

Python3 chardet模块查看编码格式的例子

Python3 chardet模块查看编码格式的例子

如下所示: 需要注意的是,如果遇到GBK2312等编码的,在decode和encode时,一律使用GBK进行编码或者解码,这是因为GBK是其他GBK编码的超集,向下兼容所有的GBK编码...

轻松实现python搭建微信公众平台

轻松实现python搭建微信公众平台

本文主要是一步一步教大家如何利用python搭建微信公众平台,有兴趣的朋友可以参考一下 使用的工具,python 新浪SAE平台,微信的公众平台 你需要先在微信的公众平台与新浪SAE平台...

Python 的字典(Dict)是如何存储的

Python 的字典(Dict)是如何存储的

前言 Python 的字典有好多个名称("映射"、"哈希"、"散列"或者"关系数组"),那你知道为什么字典会被称为 Hash(翻译为"哈希"或"散列")吗? 你知道为什么字典对于键(K...

Tensorflow 利用tf.contrib.learn建立输入函数的方法

Tensorflow 利用tf.contrib.learn建立输入函数的方法

在实际的业务中,可能会遇到很大量的特征,这些特征良莠不齐,层次不一,可能有缺失,可能有噪声,可能规模不一致,可能类型不一样,等等问题都需要我们在建模之前,先预处理特征或者叫清洗特征。那么...