国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

香港云服务器
服務器之家 - 腳本之家 - Python - python處理csv數據的方法

python處理csv數據的方法

2019-11-27 15:17kirkversion1 Python

這篇文章主要介紹了python處理csv數據的方法,實例分析了Python處理csv數據的技巧,需要的朋友可以參考下

本文實例講述了python處理csv數據的方法。分享給大家供大家參考。具體如下:

Python代碼:

 

復制代碼代碼如下:

#coding=utf-8
__author__ = 'dehua.li'
from datetime import *
import datetime
import csv
import sys
import time
import string
import os
import os.path
import pylab as plt
rootdir='/nethome/dehua.li/orderlifeCycleData/xingzheng'
writeFileDir="/nethome/dehua.li/orderlifeMyWork/xingzheng/csv"
heyueFile="/nethome/dehua.li/orderlifeCycleData/heyue_150128.csv"
ms_acked="1"
msg=[]
ex=[]
def getTheDate(date):
    [filenamePart1,filenamePart2]=string.split(filename,'.')
    [filenamePart11,filenamePart12,filenamePart13]=string.split(filenamePart1,'_')
    return filenamePart13
LocalTime=datetime.datetime.fromtimestamp(time.mktime(time.strptime("2014-11-04 20:59:59","%Y-%m-%d %H:%M:%S")))
for parent,dirname,filenames in os.walk(rootdir):
    for filename in filenames:
        fileNameWrite=os.path.join(writeFileDir,filename)
        print fileNameWrite
        csvfile00=open(fileNameWrite,'wb')
        writer1=csv.writer(csvfile00)
        writer1.writerow(['FeedCode','OrderId','Status','LocalTime','Time','Exchange'])
        fileName=os.path.join(parent,filename)
        [filenamePart1,filenamePart2]=string.split(filename,'.')
        [filenamePart11,filenamePart12,filenamePart13]=string.split(filenamePart1,'_')
        #filenamePart11_filenamePart12_filenamePart13.filenamePart2:dongzheng_orderlifeCycleData_20150111.csv
        print fileName
        with open(fileName,'rb') as csvfile:
            reader=csv.reader(csvfile)
            CsvItem=[row for row in reader]
            for item in CsvItem:
                if item[3]=='TPO':
                    #print " filter TPO "
                    continue
                if item[12]=='Sent':
                    [tm_local,ms_local]=string.split(item[15],'.')
                    [tm_localup,ms_localup]=string.split(item[19],'.')
                    LocalTime=datetime.datetime.fromtimestamp(time.mktime(time.strptime(tm_local,"%Y-%m-%d %H:%M:%S")))
                    LocalUpdate=datetime.datetime.fromtimestamp(time.mktime(time.strptime(tm_localup,"%Y-%m-%d %H:%M:%S")))
                    tm=int(((LocalTime-LocalUpdate).seconds))*1000
                    ms_sent=str(int(ms_local)-int(ms_localup)+tm)
                    if int(ms_sent)>10*60*1000:
                        print "ms_sent>600000"
                        continue
                    if(int(ms_local)-int(ms_localup)+tm)<0:
                        print 'wrong1'
                    msg=[]
                    msg.append(item[0])
                    msg.append(item[1])
                    msg.append(item[12])
                    msg.append(item[15])
                    msg.append(ms_sent)
                    with open(heyueFile,'rb') as csvfile1:
                        reader=csv.reader(csvfile1)
                        CsvItem=[row for row in reader]
                        for Item in CsvItem:
                            if Item[1]==item[0]:
                                msg.append(Item[3])
                                writer1.writerow(msg)
                                #print 'write ok'
                                ex=Item[3]
                                break
                    csvfile1.close()
                    with open(fileName,'rb') as csvfile22:
                        reader=csv.reader(csvfile22)
                        CsvItem2=[row for row in reader]
                        for item_ in CsvItem2:
                            if item_[12]=='Acked' and item_[1]==item[1]:
                                [tm_local2,ms_local2]=string.split(item_[15],'.')
                                LocalTime2=datetime.datetime.fromtimestamp(time.mktime(time.strptime(tm_local2,"%Y-%m-%d %H:%M:%S")))
                                tm2=int(((LocalTime2-LocalTime).seconds))*1000
                                ms_acked=str(int(ms_local2)-int(ms_local)+tm2)
                                if int(ms_acked)>10*60*1000:
                                    print "MSacked>600000"
                                    continue
                                msg=[]
                                msg.append(item_[0])
                                msg.append(item_[1])
                                msg.append(item_[12])
                                msg.append(item_[15])
                                msg.append(ms_acked)
                    with open(heyueFile,'rb') as csvfile111:
                        reader=csv.reader(csvfile111)
                        CsvItem=[row for row in reader]
                        for Item in CsvItem:
                            if Item[1]==item[0]:
                                msg.append(Item[3])
                                writer1.writerow(msg)
                                #print 'write ok'
                                break
                                #print "write ok"
                    csvfile22.close()
        csvfile.close()
        csvfile00.close()

 

 

復制代碼代碼如下:

#coding=utf-8
#__author__ = 'dehua.li'
from datetime import *
import datetime
import csv
import sys
import time
import string
import os
import os.path
import pylab as plt
def median(lst):
    even = (0 if len(lst) % 2 else 1) + 1
    half = (len(lst) - 1) / 2
    return sum(sorted(lst)[half:half + even]) / float(even)
def mean(lst):
    if len(lst)==0:
        return 0
    return sum(lst)/len(lst)
nightLine="21:01:00"
morningLine="09:01:00"
def getTheDate(date):
    [filenamePart1,filenamePart2]=string.split(filename,'.')
    [filenamePart11,filenamePart12,filenamePart13]=string.split(filenamePart1,'_')
    return filenamePart13
def afterOneMin(time):
    [tm_local,ms_local]=string.split(time,'.')
    [ymd,hms]=string.split(tm_local,' ')
    flag=0
    if hms>"21:01:00":
        flag=1
    elif hms>"09:01:00" and hms<"20:00:00":
        flag=1
    elif hms>"00:00:00" and hms<"05:00:00":
        flag=1
    return flag
rootdir="/nethome/dehua.li/orderlifeMyWork/xingzheng/csv"
#csvfileMaxMin = open('e:\dehua.li\csv\__xingzhenMaxMin.csv','wb')
#writer1 = csv.writer(csvfileMaxMin)
#writer1.writerow(['FeedCode','date','SentMaxTime','SentMaxLocalTime','SentMinTime','SentMinLocalTime','SentMeanTime','SentMedian','AckedMaxTime','AckedMaxLocalTime','AckedMinTime','AckedMinLocalTime','AckedMeanTime','AckedMedianTime','Exchange'])
#writer1.writerow(['FeedCode','date','SentMaxTime','SentMinTime','SentMeanTime','SentMedian','AckedMaxTime','AckedMinTime','AckedMeanTime','AckedMedianTime','Exchange'])
msg=[]
codeList=list()
orderList=list()
itemSentList=[]
itemAckedList=[]
feedCode=[]
exchange=[]
zhengshangSentMedian=0
zhengshangSentMean=0
zhengshangAckedMedian=0
zhengshangAckedMean=0
dashangSentMedian=0
dashangSentMean=0
dashangAckedMedian=0
dashangAckedMean=0
shangqiSentMedian=0
shangqiSentMean=0
shangqiAckedMedian=0
shangqiAckedMean=0
zhongjinSentMedian=0
zhongjinSentMean=0
zhongjinAckedMedian=0
zhongjinAckedMean=0
zhengshangSent=[]
zhengshangAcked=[]
dashangSent=[]
dashangAcked=[]
shangqiSent=[]
shangqiAcked=[]
zhongjinSent=[]
zhongjinAcked=[]
zhengshangSentMedianAll=[]
zhengshangSentMeanAll=[]
zhengshangAckedMedianAll=[]
zhengshangAckedMeanAll=[]
dashangSentMedianAll=[]
dashangSentMeanAll=[]
dashangAckedMedianAll=[]
dashangAckedMeanAll=[]
shangqiSentMedianAll=[]
shangqiSentMeanAll=[]
shangqiAckedMedianAll=[]
shangqiAckedMeanAll=[]
zhongjinSentMedianAll=[]
zhongjinSentMeanAll=[]
zhongjinAckedMedianAll=[]
zhongjinAckedMeanAll=[]
zhengshang='0'
dashang='0'
shangqi='0'
zhongjin='0'
with open('/nethome/dehua.li/orderlifeCycleData/heyue_150128.csv','rb') as csvfile:
    reader=csv.reader(csvfile)
    csvItem=[row for row in reader]
    zhengshang=csvItem[300][3]
    dashang=csvItem[5][3]
    shangqi=csvItem[165][3]
    zhongjin=csvItem[435][3]
    #for item in csvItem:
    #    if item[3]==zhengshang:
     #       print item
for parent,dirname,filenames in os.walk(rootdir):
    for filename in filenames:
        fileName=os.path.join(rootdir,filename)
        csvfile1=open(fileName,'rb')
        reader=csv.reader(csvfile1)
        CsvItem=[row for row in reader]
        for item in CsvItem:
            if item[0]=='FeedCode':
                continue
            if item[0] not in codeList:
                codeList.append(item[0])
                #print CsvItem[15]
            if len(item)<=5:
                print fileName
                print item
                print '++++++++++++++++++++++++++++++'
            #if afterOneMin(item[3])==0:
            #    print item[3]
            #    continue
            if item[5]==zhengshang and item[2]=='Sent':
                zhengshangSent.append(int(item[4]))
            elif item[5]==zhengshang and item[2]=='Acked':
                zhengshangAcked.append(int(item[4]))
            elif item[5]==dashang and item[2]=='Sent':
                 dashangSent.append(int(item[4]))
            elif item[5]==dashang and item[2]=='Acked':
                 dashangAcked.append(int(item[4]))
            elif item[5]==shangqi and item[2]=='Sent':
                 shangqiSent.append(int(item[4]))
                 if int(item[4])>=600000:
                     print "------------"
                     print item
            elif item[5]==shangqi and item[2]=='Acked':
                 shangqiAcked.append(int(item[4]))
            elif item[5]==zhongjin and item[2]=='Sent':
                 zhongjinSent.append(int(item[4]))
            elif item[5]==zhongjin and item[2]=='Acked':
                 zhongjinAcked.append(int(item[4]))
            else:
                 print "wrong info"
                 print item
        if mean(shangqiSent)>420000:
            print sum(shangqiSent)
            print len(shangqiSent)
            print item
            print fileName
            print shangqiSent
        zhengshangSentMedian=median(zhengshangSent)
        zhengshangSentMean=mean(zhengshangSent)
        zhengshangAckedMedian=median(zhengshangAcked)
        zhengshangAckedMean=mean(zhengshangAcked)
        dashangSentMedian=median(dashangSent)
        dashangSentMean=mean(dashangSent)
        dashangAckedMedian=median(dashangAcked)
        dashangAckedMean=mean(dashangAcked)
        shangqiSentMedian=median(shangqiSent)
        shangqiSentMean=mean(shangqiSent)
        shangqiAckedMedian=median(shangqiAcked)
        shangqiAckedMean=mean(shangqiAcked)
        zhongjinSentMedian=median(zhongjinSent)
        zhongjinSentMean=mean(zhongjinSent)
        zhongjinAckedMedian=median(zhongjinAcked)
        zhongjinAckedMean=mean(zhongjinAcked)
        #if mean(shangqiSent)>70:
        #    print '================================'
        #    print fileName
        #print codeList
        '''
        for listItem in codeList:
            itemSentList=[]
            itemAckedList=[]
            for item in CsvItem:
                if item[0]==listItem and item[2]=='Sent':
                    itemSentList.append(int(item[4]))
                    exchange=item[5]
                elif  item[0]==listItem and item[2]=='Acked':
                    itemAckedList.append(int(item[4]))
            #print itemSentList
            itemMaxSent=max(itemSentList)
            itemMinSent=min(itemSentList)
            itemAvgSent=sum(itemSentList)/len(itemSentList)
            itemMaxAcked=max(itemAckedList)
            itemMinAcked=min(itemAckedList)
            itemAvgAcked=sum(itemAckedList)/len(itemAckedList)
            SentMedian=median(itemSentList)
            AckedMedian=median(itemAckedList)
            msg=[]
            msg.append(listItem)         #0
            msg.append("2015/01/14")   #1
            msg.append(itemMaxSent)     #2
            msg.append(itemMinSent)     #3
            msg.append(itemAvgSent)     #4
            msg.append(SentMedian)     #5
            msg.append(itemMaxAcked)    #6
            msg.append(itemMinAcked)     #7
            msg.append(itemAvgAcked)     #8
            msg.append(AckedMedian)      #9
            msg.append(exchange)          #10
            if len(msg)>15:
               print "------------------------------"
               print msg
            writer1.writerow(msg)
         '''
        zhengshangSentMedianAll.append(zhengshangSentMedian)
        zhengshangSentMeanAll.append(zhengshangSentMean)
        zhengshangAckedMedianAll.append(zhengshangAckedMedian)
        zhengshangAckedMeanAll.append(zhengshangAckedMean)
        dashangSentMedianAll.append(dashangSentMedian)
        dashangSentMeanAll.append(dashangSentMean)
        dashangAckedMedianAll.append(dashangAckedMedian)
        dashangAckedMeanAll.append(dashangAckedMean)
        shangqiSentMedianAll.append(shangqiSentMedian)
        shangqiSentMeanAll.append(shangqiSentMean)
        shangqiAckedMedianAll.append(shangqiAckedMedian)
        shangqiAckedMeanAll.append(shangqiAckedMean)
        zhongjinSentMedianAll.append(zhongjinSentMedian)
        zhongjinSentMeanAll.append(zhongjinSentMean)
        zhongjinAckedMedianAll.append(zhongjinAckedMedian)
        zhongjinAckedMeanAll.append(zhongjinAckedMean)
plt.figure(1)
plt.figure(2)
plt.figure(3)
plt.figure(4)
plt.figure(1)
plt.title('SentMean r-zhengshang b-dashang,green-shangqi grey-zhongjin')
plt.plot(range(1,len(zhengshangSentMeanAll)+1),zhengshangSentMeanAll,'r')
plt.plot(range(1,len(dashangSentMeanAll)+1),dashangSentMeanAll,'b')
plt.plot(range(1,len(shangqiSentMeanAll)+1),shangqiSentMeanAll,'g')
plt.plot(range(1,len(zhongjinSentMeanAll)+1),zhongjinSentMeanAll,'grey')
plt.savefig('/nethome/dehua.li/orderlifeMyWork/xingzheng/data_noTPO_in10minutes/SentMean.png')
plt.figure(2)
plt.title('SentMedian r-zhengshang b-dashang,green-shangqi grey-zhongjin')
plt.plot(range(1,len(zhengshangSentMedianAll)+1),zhengshangSentMedianAll,'r')
plt.plot(range(1,len(dashangSentMedianAll)+1),dashangSentMedianAll,'b')
plt.plot(range(1,len(shangqiSentMedianAll)+1),shangqiSentMedianAll,'g')
plt.plot(range(1,len(zhongjinSentMedianAll)+1),zhongjinSentMedianAll,'grey')
plt.savefig('/nethome/dehua.li/orderlifeMyWork/xingzheng/data_noTPO_in10minutes/SentMedian.png')
plt.figure(3)
plt.title('AckedMean r-zhengshang b-dashang,green-shangqi grey-zhongjin')
plt.plot(range(1,len(zhengshangAckedMeanAll)+1),zhengshangAckedMeanAll,'r')
plt.plot(range(1,len(dashangAckedMeanAll)+1),dashangAckedMeanAll,'b')
plt.plot(range(1,len(shangqiAckedMeanAll)+1),shangqiAckedMeanAll,'g')
plt.plot(range(1,len(zhongjinAckedMeanAll)+1),zhongjinAckedMeanAll,'grey')
plt.savefig('/nethome/dehua.li/orderlifeMyWork/xingzheng/data_noTPO_in10minutes/AckedMean.png')
plt.figure(4)
plt.title('AckedMedian r-zhengshang b-dashang,green-shangqi grey-zhongjin')
plt.plot(range(1,len(zhengshangAckedMedianAll)+1),zhengshangAckedMedianAll,'r')
plt.plot(range(1,len(dashangAckedMedianAll)+1),dashangAckedMedianAll,'b')
plt.plot(range(1,len(shangqiAckedMedianAll)+1),shangqiAckedMedianAll,'g')
plt.plot(range(1,len(zhongjinAckedMedianAll)+1),zhongjinAckedMedianAll,'grey')
plt.savefig('/nethome/dehua.li/orderlifeMyWork/xingzheng/data_noTPO_in10minutes/AckedMedian.png')
plt.show()
print 'over'

 

希望本文所述對大家的Python程序設計有所幫助。

延伸 · 閱讀

精彩推薦
540
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产乱淫精品一区二区三区毛片 | av毛片在线 | 亚洲精品视频一区二区三区 | 日韩免费av一区二区 | 色乱码一区二区三区网站 | 亚洲一区二区中文字幕 | 日本一区二区中文字幕 | 国产成人黄色网址 | 国产精品免费看片 | 久久久精品亚洲 | 91久久 | 亚洲视频欧洲视频 | 国产色视频一区 | 亚洲精品99| 亚洲精品一区二区三区在线 | 亚洲成av人片在线观看 | 亚洲区视频在线观看 | 日韩在线小视频 | 四虎在线观看 | 黄色片免费在线观看视频 | 夜夜艹日日艹 | 激情网站免费观看 | 久久久国产精品 | 日韩欧美的一区二区 | 久久久久久网址 | 国产精品久久久久久久久久久久 | 黄大片在线观看 | 福利片在线观看 | 日韩精品视频在线 | 久久久国产日韩 | 日韩国产在线 | 亚洲一级黄色 | 国产精品亚洲一区二区三区在线 | 性色蜜桃x88av| 国产精品一区二区三区四区 | 九九热在线视频 | av看片 | 国产精品免费一区二区三区四区 | 欧美一区2区三区4区公司二百 | 成人免费影院 | 欧美精品欧美精品系列 |