国产探花免费观看_亚洲丰满少妇自慰呻吟_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             
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 芮城县| 宜章县| 启东市| 修武县| 四子王旗| 手机| 邵武市| 木兰县| 四子王旗| 会昌县| 东山县| 洪洞县| 思南县| 赫章县| 海城市| 乡城县| 扎鲁特旗| 民丰县| 大埔区| 临安市| 莱阳市| 德令哈市| 伊川县| 桦甸市| 大名县| 万宁市| 黄石市| 铁力市| 绥化市| 绥阳县| 阜平县| 汝州市| 萨嘎县| 左权县| 日喀则市| 平泉县| 广丰县| 饶平县| 汽车| 阿巴嘎旗| 北宁市|