python处理CSV文件

#!/usr/bin/python
# -*- coding: utf-8 -*-
# encoding=utf-8
# Filename:states_code.py

import os,csv,datetime

#得到当前时间
now = datetime.datetime.now()
#转换为指定的格式:
otherStyleTime = now.strftime("%Y%m%d%H%M%S")
#设置输入和输出文件
path=unicode("D:/数据集/zsc/207数据集/","utf8")
filename = "Iris.csv"
BASE_DIR = os.path.dirname(__file__)
file_in = path+filename
file_out = BASE_DIR + "/" + "output"+otherStyleTime + ".csv"
print file_in
print file_out

# ###获取csv文件的前N行,并写入新的文件
with open(file_in, 'rb') as csvfile:
reader = csv.reader(csvfile)
rows = [row for row in reader]
# print rows[:2]
writer = csv.writer(open(file_out, 'wb'))
for row in rows:
writer.writerow(row)

# ##获取前N列,并将数据写入新的文件
with open(file_in, 'rb') as csvfile:
reader = csv.reader(csvfile)
rows = [row[:2] for row in reader]
# print rows
writer = csv.writer(open(file_out, 'wb'))
for row in rows:
writer.writerow(row)

##按行合并数据
with open(file_in, 'rb') as csvfile:
reader = csv.reader(csvfile)
rows = [row for row in reader]
# print rows[0]
writer = csv.writer(open(file_out, 'wb'))
writer.writerow(rows[0])
for i in range(2):
for row in rows[1:]:
writer.writerow(row)

##按列合并数据
with open(file_in) as csvfile:
rows = csv.reader(csvfile)
with open(file_out, 'wb+') as f:
writer = csv.writer(f)
for row in rows:
row = row + row[1:]
print row writer.writerow(row)
相关文章
相关标签/搜索