使用Python将三个CSV文件数据写入一个包含一个日期列和三个数据列的CSV文件,可以按照以下步骤进行:
import csv
from datetime import datetime
header = ['日期', '数据1', '数据2', '数据3']
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(header)
# 第一个源CSV文件
with open('file1.csv', 'r') as file:
reader = csv.reader(file)
next(reader) # 跳过表头
for row in reader:
date = datetime.strptime(row[0], '%Y-%m-%d') # 假设日期列为第一列
data1 = float(row[1]) # 假设数据1列为第二列
data2 = float(row[2]) # 假设数据2列为第三列
data3 = float(row[3]) # 假设数据3列为第四列
with open('output.csv', 'a', newline='') as file:
writer = csv.writer(file)
writer.writerow([date, data1, data2, data3])
# 第二个源CSV文件
with open('file2.csv', 'r') as file:
reader = csv.reader(file)
next(reader) # 跳过表头
for row in reader:
date = datetime.strptime(row[0], '%Y-%m-%d') # 假设日期列为第一列
data1 = float(row[1]) # 假设数据1列为第二列
data2 = float(row[2]) # 假设数据2列为第三列
data3 = float(row[3]) # 假设数据3列为第四列
with open('output.csv', 'a', newline='') as file:
writer = csv.writer(file)
writer.writerow([date, data1, data2, data3])
# 第三个源CSV文件
with open('file3.csv', 'r') as file:
reader = csv.reader(file)
next(reader) # 跳过表头
for row in reader:
date = datetime.strptime(row[0], '%Y-%m-%d') # 假设日期列为第一列
data1 = float(row[1]) # 假设数据1列为第二列
data2 = float(row[2]) # 假设数据2列为第三列
data3 = float(row[3]) # 假设数据3列为第四列
with open('output.csv', 'a', newline='') as file:
writer = csv.writer(file)
writer.writerow([date, data1, data2, data3])
以上代码将逐个打开源CSV文件,跳过表头,解析日期和数据列的值,并将它们写入output.csv文件中。注意,在写入时使用'a'
模式打开文件以便追加新的数据。
这样,三个CSV文件的数据就会被合并写入到一个包含日期列和三个数据列的output.csv文件中了。
请注意,以上代码仅为示例代码,具体实现根据CSV文件的具体格式和数据类型可能会有所变化,你需要根据实际情况进行调整。
领取专属 10元无门槛券
手把手带您无忧上云