python讀寫csv文件并增加行列的實(shí)例代碼
python讀寫csv文件并增加行列,具體代碼如下所示:
# -*- coding: utf-8 -*- """ Created on Thu Aug 17 11:28:17 2017 @author: Shawn Yuen """ import csv d = list(range(38685)) with open('./kinetics_test.csv') as f1: f_csv = csv.DictReader(f1) for i, row in enumerate(f_csv): #print(row) key1 = 'label' value1 = 'test' row[key1] = value1 key2 = 'is_cc' value2 = '0' row[key2] = value2 d[i] = row f1.close() headers = ['label', 'youtube_id', 'time_start', 'time_end', 'split', 'is_cc'] with open('./kinetics_test_new_.csv', 'w') as f: f_csv = csv.DictWriter(f, headers) f_csv.writeheader() f_csv.writerows(d) f.close() with open('./kinetics_test_new_.csv','rt') as fin: lines='' for line in fin: if line!='\n': lines+=line with open('./kinetics_test_new.csv','wt')as fout: fout.write(lines)
為了下載test數(shù)據(jù),
方法一: 用Excel打開csv文件,手動(dòng)添加label和is_cc;
方法二: 利用python里面的csv模塊改寫。
生成的csv文件中奇怪的多了一些空行,然后找到解決方法,見參考資料。
python使用writerows寫csv文件產(chǎn)生多余空行
知識(shí)點(diǎn)擴(kuò)展:
python寫入csv文件的幾種方法總結(jié)
最常用的一種方法,利用pandas包
import pandas as pd #任意的多組列表 a = [1,2,3] b = [4,5,6] #字典中的key值即為csv中列名 dataframe = pd.DataFrame({'a_name':a,'b_name':b}) #將DataFrame存儲(chǔ)為csv,index表示是否顯示行名,default=True dataframe.to_csv("test.csv",index=False,sep=',') a_name b_name 0 1 4 1 2 5 2 3 6
同樣pandas也提供簡(jiǎn)單的讀csv方法
import pandas as pd data = pd.read_csv('test.csv')
會(huì)得到一個(gè)DataFrame類型的data,不熟悉處理方法可以參考pandas十分鐘入門
另一種方法用csv包,一行一行寫入
import csv #python2可以用file替代open with open("test.csv","w") as csvfile: writer = csv.writer(csvfile) #先寫入columns_name writer.writerow(["index","a_name","b_name"]) #寫入多行用writerows writer.writerows([[0,1,3],[1,2,3],[2,3,4]]) index a_name b_name 0 1 3 1 2 3 2 3 4
讀取csv文件用reader
import csv with open("test.csv","r") as csvfile: reader = csv.reader(csvfile) #這里不需要readlines for line in reader: print line
總結(jié)
以上所述是小編給大家介紹的python讀寫csv文件并增加行列的實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
基于PyTorch的permute和reshape/view的區(qū)別介紹
這篇文章主要介紹了基于PyTorch的permute和reshape/view的區(qū)別介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06python yield和Generator函數(shù)用法詳解
這篇文章主要介紹了python yield和Generator函數(shù)用法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02Python中用于計(jì)算對(duì)數(shù)的log()方法
這篇文章主要介紹了Python中用于計(jì)算對(duì)數(shù)的log()方法,是Python入門基礎(chǔ)中的必會(huì)的方法,需要的朋友可以參考下2015-05-05Django Admin 管理工具的實(shí)現(xiàn)
這篇文章主要介紹了Django Admin 管理工具的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05python調(diào)用百度REST API實(shí)現(xiàn)語(yǔ)音識(shí)別
這篇文章主要為大家詳細(xì)介紹了python調(diào)用百度REST API實(shí)現(xiàn)語(yǔ)音識(shí)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08分析python并發(fā)網(wǎng)絡(luò)通信模型
隨著互聯(lián)網(wǎng)和物聯(lián)網(wǎng)的高速發(fā)展,使用網(wǎng)絡(luò)的人數(shù)和電子設(shè)備的數(shù)量急劇增長(zhǎng),其也對(duì)互聯(lián)網(wǎng)后臺(tái)服務(wù)程序提出了更高的性能和并發(fā)要求。本文主要分析比較了一些模型的優(yōu)缺點(diǎn),并且用python來(lái)實(shí)現(xiàn)2021-06-06