我正在嘗試使用 Python 讀取二進(jìn)制文件。其他人使用以下代碼使用 R 讀入數(shù)據(jù):x <- readBin(webpage, numeric(), n=6e8, size = 4, endian = "little") myPoints <- data.frame("tmax" = x[1:(length(x)/4)], "nmax" = x[(length(x)/4 + 1):(2*(length(x)/4))], "tmin" = x[(2*length(x)/4 + 1):(3*(length(x)/4))], "nmin" = x[(3*length(x)/4 + 1):(length(x))])使用 Python,我正在嘗試以下代碼:import structwith open('file','rb') as f: val = f.read(16) while val != '': print(struct.unpack('4f', val)) val = f.read(16) 我得出的結(jié)果略有不同。例如,R中的第一行返回4列,分別為-999.9、0,-999.0、0。Python對(duì)所有四列返回-999.0(下圖)。Python輸出:R輸出:我知道他們正在用一些[]代碼按文件的長(zhǎng)度進(jìn)行切片,但是我不知道如何在Python中精確地做到這一點(diǎn),也不知道他們?yōu)槭裁催@樣做。基本上,我想重新創(chuàng)建R在Python中所做的事情。如果需要,我可以提供更多的代碼庫(kù)。我不想淹沒(méi)不必要的代碼。
添加回答
舉報(bào)
0/150
提交
取消