python讀寫csv文件并增加行列的實例代碼
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文件,手動添加label和is_cc;
方法二: 利用python里面的csv模塊改寫。
生成的csv文件中奇怪的多了一些空行,然后找到解決方法,見參考資料。
python使用writerows寫csv文件產(chǎn)生多余空行
知識點擴展:
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存儲為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也提供簡單的讀csv方法
import pandas as pd
data = pd.read_csv('test.csv')
會得到一個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文件并增加行列的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
基于PyTorch的permute和reshape/view的區(qū)別介紹
這篇文章主要介紹了基于PyTorch的permute和reshape/view的區(qū)別介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
python yield和Generator函數(shù)用法詳解
這篇文章主要介紹了python yield和Generator函數(shù)用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-02-02
python調(diào)用百度REST API實現(xiàn)語音識別
這篇文章主要為大家詳細介紹了python調(diào)用百度REST API實現(xiàn)語音識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08

