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

python numpy實(shí)現(xiàn)多次循環(huán)讀取文件 等間隔過(guò)濾數(shù)據(jù)示例

 更新時(shí)間:2020年03月14日 09:41:55   作者:未名亞柳  
這篇文章主要介紹了python numpy實(shí)現(xiàn)多次循環(huán)讀取文件 等間隔過(guò)濾數(shù)據(jù)示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

numpy的np.fromfile會(huì)出現(xiàn)如下的問題,只能一次性讀取文件的內(nèi)容,不能追加讀取,連續(xù)兩次的np.fromfile讀到的東西一樣

如果數(shù)據(jù)文件太大(幾個(gè)G或以上)不能一次性全讀進(jìn)去,需要追加讀取

而我希望讀到的donser1和donser2是連續(xù)的兩段

(實(shí)際使用時(shí),比如說(shuō)讀取的文件是二進(jìn)制數(shù)據(jù)文件,每一塊文件都包括包頭+數(shù)據(jù),希望將這兩塊分開獲取,然后再做進(jìn)一步處理)

代碼:

import numpy as np

length=2500
plt_arr=np.linspace(0.0, 0.0, length*2048*16)
start=0
tail_size = 40  #40bit
num_size=16*1024-40 # 16kb -40b


def one_file(f, loop):
  global tail_size, num_size
  while loop:
    num = np.fromfile(f, dtype=np.int16, count=num_size)
    tail=np.fromfile(f, dtype=np.int16, count=tail_size)
    loop=loop-1
    yield num, tail

def main():
  file_path="E://1-gl300c.r3f"
  global length, plt_arr, start
  loop=length
  with open(file_path, 'rb') as f:
    for num, tail in one_file(f, loop):
      plt_arr[start:start+len(num)]=num[:]
      start=start+len(num)
  return   plt_arr[0:start]

if __name__ == "__main__":
  donser=main()
  print(donser)

假設(shè)數(shù)據(jù)文件的格式是 數(shù)據(jù)+包尾,plt_arr存儲(chǔ)全部的數(shù)據(jù)部分,包尾丟棄,該方法實(shí)現(xiàn)了多次連續(xù)追加讀取數(shù)據(jù)文件的內(nèi)容plt_arr最好使用先開好大小再逐次賦值,親測(cè)append方法和concatenate方法時(shí)間效率極差或者不用numpy也可以,代碼:

def read_in_chunks(filePath, chunk_size=16*1024):
  file_object = open(filePath,'rb')
  count=0
  while True:
    chunk_data = file_object.read(chunk_size)
    if not chunk_data:
      break
    yield chunk_data[0:16*1024-28]


if __name__ == "__main__":
  num=0
  for chunk in read_in_chunks("E:\\1-gl300c.r3f"):
    #process(chunk) # <do something with chunk>
    name=str(num)+".bin"
    num=num+1
    if num<303000:
      continue
    if num>308001:
      break
    file_object = open(name, 'wb')
    file_object.write(chunk)
    file_object.close( )

numpy.fromfile的其他方法可以參考這個(gè)

補(bǔ)充知識(shí):python每隔一段時(shí)間運(yùn)行一個(gè)函數(shù)

用python語(yǔ)言每隔兩分鐘從接口獲取一次數(shù)據(jù)來(lái)插入到數(shù)據(jù)庫(kù)

看了大佬們的方法感覺最簡(jiǎn)單就是:

做一個(gè)死循環(huán),讓函數(shù)執(zhí)行完后休眠兩分鐘,然后進(jìn)入下一次執(zhí)行,除非手動(dòng)停止或者有錯(cuò)誤停止,否則程序會(huì)永遠(yuǎn)運(yùn)行下去。

以下是代碼:

import get_details
import time

second=2*60
print second
while True:
get_details.sign_cycle()
time.sleep(second)

上面的代碼就是讓get_details模塊的sign_cycle()函數(shù)每?jī)煞昼妶?zhí)行一次。

是不是超簡(jiǎn)單!?。。。?!

以上這篇python numpy實(shí)現(xiàn)多次循環(huán)讀取文件 等間隔過(guò)濾數(shù)據(jù)示例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用Python實(shí)現(xiàn)LLM的模型遷移

    使用Python實(shí)現(xiàn)LLM的模型遷移

    在當(dāng)今的人工智能領(lǐng)域,大型語(yǔ)言模型(LLM)如GPT、BERT等已經(jīng)成為了研究和應(yīng)用的熱點(diǎn),但其訓(xùn)練和部署成本高昂,且在不同領(lǐng)域或任務(wù)間的遷移能力有限,因此,如何有效地實(shí)現(xiàn)LLM的模型遷移,成為了一個(gè)重要的研究方向,本文將深入探討如何使用Python實(shí)現(xiàn)LLM的模型遷
    2025-02-02
  • Python實(shí)現(xiàn)刪除list列表重復(fù)元素的方法總結(jié)

    Python實(shí)現(xiàn)刪除list列表重復(fù)元素的方法總結(jié)

    在Python編程中,我們經(jīng)常需要處理列表中的重復(fù)元素,這篇文章為大家介紹了五種高效的方法來(lái)刪除列表中的重復(fù)元素,希望對(duì)大家有所幫助
    2023-07-07
  • Python字符遍歷的藝術(shù)

    Python字符遍歷的藝術(shù)

    通常我們要遍歷一個(gè)字符串中的每個(gè)字符,都要先獲取字符串的長(zhǎng)度,然后用一個(gè)For循環(huán)把每個(gè)字符取出,進(jìn)行處理。但是,又是我們的Python,為我們提供了很多便捷的方式去遍歷一個(gè)字符串中的字符。
    2008-09-09
  • Python?數(shù)據(jù)篩選功能實(shí)現(xiàn)

    Python?數(shù)據(jù)篩選功能實(shí)現(xiàn)

    這篇文章主要介紹了Python?數(shù)據(jù)篩選,無(wú)論是在數(shù)據(jù)分析還是數(shù)據(jù)挖掘的時(shí)候,數(shù)據(jù)篩選總會(huì)涉及到,這里我總結(jié)了一下python中列表,字典,數(shù)據(jù)框中一些常用的數(shù)據(jù)篩選的方法,需要的朋友可以參考下
    2023-04-04
  • Python實(shí)現(xiàn)多條件篩選目標(biāo)數(shù)據(jù)功能【測(cè)試可用】

    Python實(shí)現(xiàn)多條件篩選目標(biāo)數(shù)據(jù)功能【測(cè)試可用】

    這篇文章主要介紹了Python實(shí)現(xiàn)多條件篩選目標(biāo)數(shù)據(jù)功能,結(jié)合實(shí)例形式總結(jié)分析了Python3使用內(nèi)建函數(shù)filter、pandas包以及for循環(huán)三種方法對(duì)比分析了列表進(jìn)行條件篩選操作相關(guān)實(shí)現(xiàn)技巧與運(yùn)行效率,需要的朋友可以參考下
    2018-06-06
  • 用Python實(shí)現(xiàn)KNN分類算法

    用Python實(shí)現(xiàn)KNN分類算法

    這篇文章主要為大家詳細(xì)介紹了用Python實(shí)現(xiàn)KNN分類算法的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • OpenCV?圖像分割實(shí)現(xiàn)Kmean聚類的示例代碼

    OpenCV?圖像分割實(shí)現(xiàn)Kmean聚類的示例代碼

    本文主要介紹了OpenCV?圖像分割實(shí)現(xiàn)Kmean聚類的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Python按指定列的空值刪除行的操作代碼

    Python按指定列的空值刪除行的操作代碼

    這篇文章主要介紹了Python按指定列的空值刪除行的操作代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-01-01
  • python重寫方法和重寫特殊構(gòu)造方法

    python重寫方法和重寫特殊構(gòu)造方法

    這篇文章主要介紹了python重寫方法和重寫特殊構(gòu)造方法,對(duì)于父類的方法,只要他不符合子類模擬的實(shí)物的行為,都可以進(jìn)行重寫,更多相關(guān)內(nèi)容需要的朋友可以參考一下
    2022-07-07
  • python代碼過(guò)長(zhǎng)的換行方法

    python代碼過(guò)長(zhǎng)的換行方法

    今天小編就為大家分享一篇python代碼過(guò)長(zhǎng)的換行方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07

最新評(píng)論

黑龙江省| 滨州市| 兴海县| 伊金霍洛旗| 镇赉县| 嵊州市| 镇江市| 泸定县| 和龙市| 馆陶县| 湟中县| 双鸭山市| 海原县| 府谷县| 育儿| 绥滨县| 锦州市| 西贡区| 博爱县| 嘉兴市| 乐都县| 清苑县| 高雄县| 黄大仙区| 德庆县| 色达县| 九江市| 牡丹江市| 乐清市| 南宁市| 朝阳县| 惠来县| 白城市| 绥阳县| 通辽市| 嫩江县| 宁夏| 海伦市| 获嘉县| 南郑县| 民勤县|