-2
我具有包含以下形式的數據dat文件:DAT文件轉換陣列
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
對於每個觀測和通過每行分隔。如何將其轉換爲一個數組,前6個變量爲X,最後一個變量爲Y?
再次感謝您!
我具有包含以下形式的數據dat文件:DAT文件轉換陣列
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
對於每個觀測和通過每行分隔。如何將其轉換爲一個數組,前6個變量爲X,最後一個變量爲Y?
再次感謝您!
這個問題有點不清楚,但我會盡力回答。
如果輸入文件具有以下結構(沒有第一和第三行):
X1 X2 X3 X4 X5 X6 Y(1-6)
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
X7 X8 X9 X10 X11 X12 Y(7-12)
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
然後將以下代碼應該工作。 它返回元組列表(Xn,Yn)。
points = []
for line in open("file.dat", "r").readlines():
fields = map(float, line.split())
xs, y = fields[:-1], fields[-1]
for x in xs:
points.append((x,y))
print points
非常感謝您的幫助! :) – Marcus
請更具體一些。 「dat文件」是.dat文件擴展名的文本文件嗎?所有這些數字都在一個文本行上,用空格分隔,並且您有多個文本行? 「前六個變量爲X,最後一個變量爲Y」意味着什麼? X的二維列表和Y的一維列表是否足夠? (即X [0] [0] == 0.23548,X [0] [1] == 0.34938等等,Y [0] == 1]。)你有沒有試過自己的代碼? –
感謝您回答我的一些問題,但有些問題仍然突出。例如,所需答案的格式尚不清楚。 –
Hi Rory,文件確實是一個.dat擴展名文件,有多行,其中第一行包含6個X和1個Y等等。我希望將它轉換爲下面mpurg提到的2維數組。 – Marcus