ฉันมีรหัส Python ที่เอาต์พุตเป็น
เมทริกซ์ขนาดซึ่งรายการเป็นประเภทfloatทั้งหมด ถ้าฉันบันทึกด้วยนามสกุล.datไฟล์จะมีขนาด 500 MB ฉันอ่านพบว่าการใช้h5pyลดขนาดไฟล์ลงอย่างมาก ดังนั้นขอบอกว่าผมมีอาร์เรย์ numpy 2D Aชื่อ ฉันจะบันทึกเป็นไฟล์ h5py ได้อย่างไร นอกจากนี้ฉันจะอ่านไฟล์เดียวกันและวางเป็นอาร์เรย์จำนวนนับในรหัสอื่นได้อย่างไรเนื่องจากฉันต้องจัดการกับอาร์เรย์
np.savetxt("output.dat",A,'%10.8e')
np.save('output.dat', A)ซึ่งจะบันทึกในรูปแบบไบนารี (เร็วกว่ามากใช้พื้นที่น้อยลงมาก)
A = np.loadtxt('output.dat',unpack=True)
h5pyไม่สร้างไฟล์ที่มีขนาดเล็กกว่าที่np.saveต้องการ? เป็นh5pyเร็วกว่าnp.saveสำหรับอาร์เรย์ของขนาดที่กำหนดในคำถาม?
.datส่วนขยายได้อย่างไร?