国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python讀取與寫入csv格式文件的示例代碼

2020-02-16 11:08:06
字體:
來源:轉載
供稿:網友

在數據分析中經常需要從csv格式的文件中存取數據以及將數據寫書到csv文件中。將csv文件中的數據直接讀取為 dict 類型和 DataFrame 是非常方便也很省事的一種做法,以下代碼以鳶尾花數據為例。

csv文件讀取為dict

代碼

 # -*- coding: utf-8 -*-import csvwith open('E:/iris.csv') as csvfile:reader = csv.DictReader(csvfile, fieldnames=None) # fieldnames默認為None,如果所讀csv文件沒有表頭,則需要指定list_1 = [e for e in reader] # 每行數據作為一個dict存入鏈表中csvfile.close()print list_1[0]

輸出

 {'Petal.Length': '1.4', 'Sepal.Length': '5.1', 'Petal.Width': '0.2', 'Sepal.Width': '3.5', 'Species': 'setosa'}

如果讀入的每條數據需要單獨處理且數據量較大,推薦逐條處理然后再放入。

 list_1 = list()for e in reader: list_1.append(your_func(e)) # your_func為每條數據的處理函數 

多條類型為dict的數據寫入csv文件

代碼

 # 數據data = [{'Petal.Length': '1.4', 'Sepal.Length': '5.1', 'Petal.Width': '0.2', 'Sepal.Width': '3.5', 'Species': 'setosa'},{'Petal.Length': '1.4', 'Sepal.Length': '4.9', 'Petal.Width': '0.2', 'Sepal.Width': '3', 'Species': 'setosa'},{'Petal.Length': '1.3', 'Sepal.Length': '4.7', 'Petal.Width': '0.2', 'Sepal.Width': '3.2', 'Species': 'setosa'},{'Petal.Length': '1.5', 'Sepal.Length': '4.6', 'Petal.Width': '0.2', 'Sepal.Width': '3.1', 'Species': 'setosa'}]# 表頭header = ['Petal.Length', 'Sepal.Length', 'Petal.Width', 'Sepal.Width', 'Species']print len(data)with open('E:/dst.csv', 'wb') as dstfile: #寫入方式選擇wb,否則有空行 writer = csv.DictWriter(dstfile, fieldnames=header) writer.writeheader() # 寫入表頭 writer.writerows(data) # 批量寫入dstfile.close()

上述代碼將數據整體寫入csv文件,如果數據量較多且想實時查看寫入了多少數據可以使用 writerows 函數。

讀取csv文件為DataFrame

代碼

 # 讀取csv文件為DataFrameimport pandas as pddframe = pd.DataFrame.from_csv('E:/iris.csv')

也可以稍微曲折點:

import csvimport pandas as pdwith open('E:/iris.csv') as csvfile: reader = csv.DictReader(csvfile, fieldnames=None) # fieldnames默認為None,如果所讀csv文件沒有表頭,則需要指定 list_1 = [e for e in reader] # 每行數據作為一個dict存入鏈表中csvfile.close()dfrme = pd.DataFrame.from_records(list_1) 

從zip文件中讀取指定csv文件為DataFrame

dst.zip文件中包含有dst.csv和其它文件,現在在不解壓縮的情況下直接讀取dst.csv文件為DataFrame.

import pandas as pdimport zipfilez_file = zipfile.ZipFile('E:/dst.zip')dframe = pd.read_csv(z_file.open('dst.csv'))z_file.close()print dframe             
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 武义县| 鲜城| 松江区| 韶关市| 临夏县| 华容县| 满洲里市| 镇康县| 肃南| 抚松县| 定安县| 昌吉市| 延长县| 海林市| 集贤县| 襄垣县| 麦盖提县| 湛江市| 保山市| 隆安县| 濮阳县| 丰宁| 遂宁市| 永吉县| 花垣县| 板桥市| 台前县| 思茅市| 禄丰县| 云林县| 乳山市| 堆龙德庆县| 庐江县| 沿河| 增城市| 甘谷县| 抚顺市| 友谊县| 丰城市| 武威市| 蒙山县|