日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python解析CSV數據 - 通過Pandas解析邏輯分析儀導出的CSV數據

系統 2186 0

Python通過Pandas解析邏輯分析儀導出的CSV數據

  • 腳本要解決的問題
  • Python代碼
  • 備注:

腳本要解決的問題

為方便分析邏輯分析儀導出的csv數據, 簡單做了個轉換工具。。。
邏輯分析儀導出的csv數據是根據時間戳逐行排序,很難分析一個完整的幀數據,

例如下圖:
下圖邏輯分析儀工具導出的csv數據有3w多行,沒辦法直接通過該文件對數據幀進行分析,而且重點是。。。看時間長了太費眼!
Python解析CSV數據 - 通過Pandas解析邏輯分析儀導出的CSV數據_第1張圖片
所以通過Pandas簡單對數據做些行列變換,好方便查看與分析數據、

Python代碼

Python腳本如下:

            
              
                import
              
               pandas 
              
                as
              
               pd

              
                import
              
               numpy 
              
                as
              
               np

              
                import
              
               time


              
                def
              
              
                WritetoFile
              
              
                (
              
              FileName
              
                ,
              
              Data
              
                )
              
              
                :
              
              
                #fileName= 'record.txt'
              
              
                with
              
              
                open
              
              
                (
              
              FileName
              
                ,
              
              
                'w'
              
              
                )
              
              
                as
              
               record
              
                :
              
              
        strr 
              
                =
              
              
                "\n"
              
              
        content 
              
                =
              
               strr
              
                .
              
              join
              
                (
              
              Data
              
                )
              
              
        record
              
                .
              
              write
              
                (
              
              content
              
                +
              
              
                '\n'
              
              
                )
              
              
                print
              
              
                (
              
              
                'Data processing.... pls. wait and make sure rename input file to input.csv..'
              
              
                )
              
                      
df 
              
                =
              
               pd
              
                .
              
              read_csv
              
                (
              
              
                'input.csv'
              
              
                ,
              
               low_memory
              
                =
              
              
                False
              
              
                )
              
              


data 
              
                =
              
               df
              
                .
              
              set_index
              
                (
              
              
                [
              
              
                'Packet ID'
              
              
                ,
              
              
                'Address'
              
              
                ,
              
              
                'Read/Write'
              
              
                ,
              
              
                'ACK/NAK'
              
              
                ,
              
              
                'Time [s]'
              
              
                ]
              
              
                )
              
              

st 
              
                =
              
               data
              
                .
              
              unstack
              
                (
              
              
                )
              
              
                print
              
              
                (
              
              st
              
                )
              
              
                print
              
              
                (
              
              
                'Finish processing, now create result file....'
              
              
                )
              
              

st
              
                .
              
              to_csv
              
                (
              
              
                'result.csv'
              
              
                )
              
              

st
              
                .
              
              to_csv
              
                (
              
              
                'resultTag.txt'
              
              
                ,
              
              sep
              
                =
              
              
                ' '
              
              
                )
              
              
                print
              
              
                (
              
              
                'All Done!, please check resultTag.txt and result.csv'
              
              
                )
              
              
                print
              
              
                (
              
              
                'this window will close after 5s'
              
              
                )
              
              

time
              
                .
              
              sleep
              
                (
              
              
                5
              
              
                )
              
            
          

轉換結果txt版本為:

Python解析CSV數據 - 通過Pandas解析邏輯分析儀導出的CSV數據_第2張圖片

轉換結果csv版本為:
Python解析CSV數據 - 通過Pandas解析邏輯分析儀導出的CSV數據_第3張圖片

這樣看起來就方便多了, 其中txt里是為了方便數據搜索,而result. csv里才是詳細數據。 (txt需要用NotePad++打開格式才正確)

備注:

執行過程中主要是靠python的Data重組運算, 如果數據量較大,可能需要等待一段時間,并占用大量內存。。。 我實測的7w多行數據總共大概要等十分鐘, 所以還是盡量去掉無用數據,

在這里插入圖片描述
Python解析CSV數據 - 通過Pandas解析邏輯分析儀導出的CSV數據_第4張圖片


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 会理县| 开化县| 大洼县| 安吉县| 中牟县| 鄂托克前旗| 南华县| 大田县| 海晏县| 铁力市| 砀山县| 齐河县| 平定县| 唐海县| 洛川县| 黄龙县| 藁城市| 太康县| 海南省| 英吉沙县| 澎湖县| 邳州市| 镇远县| 玉溪市| 镇宁| 伊金霍洛旗| 台山市| 娄烦县| 花莲市| 东城区| 永城市| 哈尔滨市| 江山市| 镇康县| 灯塔市| 广安市| 静宁县| 九台市| 舒城县| 禹城市| 临汾市|