最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python讀csv文件去掉一列后再寫(xiě)入新的文件實(shí)例

 更新時(shí)間:2017年12月28日 14:35:37   作者:卡路西法  
下面小編就為大家分享一篇Python讀csv文件去掉一列后再寫(xiě)入新的文件實(shí)例,具有很的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

用了兩種方式解決該問(wèn)題,都是網(wǎng)上現(xiàn)有的解決方案。

場(chǎng)景說(shuō)明:

有一個(gè)數(shù)據(jù)文件,以文本方式保存,現(xiàn)在有三列user_id,plan_id,mobile_id。目標(biāo)是得到新文件只有mobile_id,plan_id。

解決方案

方案一:用python的打開(kāi)文件寫(xiě)文件的方式直接擼一遍數(shù)據(jù),for循環(huán)內(nèi)處理數(shù)據(jù)并寫(xiě)入到新文件。

代碼如下:

def readwrite1( input_file,output_file):
 f = open(input_file, 'r')
 out = open(output_file,'w')
 print (f)
 for line in f.readlines():
 a = line.split(",")
 x=a[0] + "," + a[1]+"\n"
 out.writelines(x)
 f.close()
 out.close()

方案二:用 pandas 讀數(shù)據(jù)到 DataFrame 再做數(shù)據(jù)分割,直接用 DataFrame 的寫(xiě)入功能寫(xiě)到新文件

代碼如下:

def readwrite2(input_file,output_file): date_1=pd.read_csv(input_file,header=0,sep=',') date_1[['mobile', 'plan_id']].to_csv(output_file, sep=',', header=True,index=False) 

從代碼上看,pandas邏輯更清晰。

下面看下執(zhí)行的效率吧!

def getRunTimes( fun ,input_file,output_file):
 begin_time=int(round(time.time() * 1000))
 fun(input_file,output_file)
 end_time=int(round(time.time() * 1000))
 print("讀寫(xiě)運(yùn)行時(shí)間:",(end_time-begin_time),"ms")

getRunTimes(readwrite1,input_file,output_file) #直接擼數(shù)據(jù)
getRunTimes(readwrite2,input_file,output_file1) #使用dataframe讀寫(xiě)數(shù)據(jù)

讀寫(xiě)運(yùn)行時(shí)間: 976 ms

讀寫(xiě)運(yùn)行時(shí)間: 777 ms

input_file 大概有27萬(wàn)的數(shù)據(jù),dataframe的效率比f(wàn)or循環(huán)效率還是要快一點(diǎn)的,如果數(shù)據(jù)量更大些,效果是否更明顯呢?

下面試下增加input_file記錄的數(shù)量試試,有如下結(jié)果

input_file readwrite1 readwrite2
27W 976 777
55W 1989 1509
110W 4312 3158

從上面測(cè)試結(jié)果來(lái)看,dataframe的效率提高大約30%左右。

以上這篇Python讀csv文件去掉一列后再寫(xiě)入新的文件實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

行唐县| 绥德县| 青田县| 栖霞市| 台中市| 博客| 上饶县| 平度市| 昌都县| 沐川县| 岳阳县| 石狮市| 岳阳市| 乌兰浩特市| 图片| 盐亭县| 霞浦县| 元朗区| 大埔县| 翁牛特旗| 嘉兴市| 和静县| 岑巩县| 嘉鱼县| 西华县| 林州市| 台北市| 濮阳市| 楚雄市| 赤峰市| 平塘县| 多伦县| 宁德市| 富源县| 襄垣县| 东平县| 梁平县| 盐池县| 青冈县| 五莲县| 清镇市|