簡體   English   中英

使用 np.fromfile 讀取具有特定行為的數據

[英]Use np.fromfile to read data with specific behavior

例如,假設我有一個包含以下二進制數據的文件:

0x01 0x02 0x03 0x04

我想創建一個自定義my_type ,其行為如下:

>> np.fromfile(..., dtype=my_type, count=2)
np.array([3, 7])

即自定義 dtype 需要兩個字節並對它們的整數值求和。

我想這樣做的原因是為了防止在使用fromfile后需要對我的數據進行后fromfile ,這可能嗎?

如果沒有,使用大量數據實現這一目標的最有效方法是什么?

我不會創建新的數據類型,而是將np.loadtxt與轉換器一起使用:

# Example input:
s = io.StringIO('0x01 0x02 0x03 0x04')
# Read the file
x = np.loadtxt(s,delimiter=' ',converters={0:lambda s: int(s,16)})
# Sum the result 2 by 2.
x = x[::2]+x[1::2]

在這里,我只是使用 lambda 函數將每個十六進制數轉換為整數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM