ການປ່ຽນຮູບຮ່າງລະບົບບັນຊີ NumPy
ການປ່ຽນຕົວຈຸລັງ
ການປ່ຽນຕົວຂອງຈຸລັງແມ່ນການປ່ຽນຮູບຊັ້ນຂອງຈຸລັງ:
ຮູບຊັ້ນຂອງຈຸລັງແມ່ນຈຳນວນສ່ວນຂອງບ່ອນດັ່ງກ່າວໃນແຕ່ລະພາກສາຍ:
ການປ່ຽນຕົວຂອງຈຸລັງສາມາດເພີ່ມຫຼືຫຼຸດພາກສາຍຫຼືປ່ຽນຈຸລັງໃນແຕ່ລະພາກສາຍ:
ປ່ຽນຈາກ 1-D ເປັນ 2-D
ຄວາມກຳລັງ
ປ່ຽນຈາກ 1-D 数组ທີ່ມີ 12 ສ່ວນເປັນ 2-D 数组.
ພາວະພາກສາຍອອກຫຼັງຈະມີ 4 ສ່ວນສາມາດວ່າ 3 ສ່ວນ:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(4, 3) print(newarr)
ປ່ຽນຈາກ 1-D ເປັນ 3-D
ຄວາມກຳລັງ
ປ່ຽນຈາກ 1-D 数组ທີ່ມີ 12 ສ່ວນເປັນ 3-D 数组.
ພາວະພາກສາຍອອກຫຼັງຈະມີ 2 ສ່ວນສາມາດວ່າ 3 ສ່ວນສາມາດວ່າ 2 ສ່ວນ:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(2, 3, 2) print(newarr)
ພວກເຮົາສາມາດປ່ຽນຈາກຕົວອີກຫຼືບໍ່?
ແມ່ນແນ່ນອນໃນຂະນະທີ່ສ່ວນສາມາດທັງສອງຮູບຊັ້ນທີ່ມີສິດທິພາບ:
ພວກເຮົາສາມາດປ່ຽນຈາກ 8 ສ່ວນ 1-D 数组ເປັນ 4 ສ່ວນໃນ 2-D 数组ຂອງ 2 ບ່ອນໃຫຍ່ເທິງບ່ອນດັ່ງກ່າວແຕ່ພວກເຮົາບໍ່ສາມາດປ່ຽນຈາກ 3 ສ່ວນ 3-D 数组ຂອງ 3 ບ່ອນໃຫຍ່ຄືກັບນັ້ນຈະຕ້ອງການ 3x3 = 9 ສ່ວນ:
ຄວາມກຳລັງ
ຄວາມພະຍາຍາມທີ່ຈະປ່ຽນຈາກວົງຄືນຂອງຈຸລັງທີ່ມີ 8 ສ່ວນສາມາດເປັນ 2-D 数组ໃນແຕ່ລະພາວະການການສ້າງຕົວອີກທີ່ຈະມີຄວາມຜິດພາດ:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(3, 3) print(newarr)
ກັບຄືນຫຼືການເບິ່ງທີ່ແນ່ນອນ?
ຄວາມກຳລັງ
ການກວດຄົ້ນວ່າຕົວແທນທີ່ກັບຄືນມາຫຼືການເບິ່ງທີ່ແນ່ນອນ:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) print(arr.reshape(2, 4).base)
ຕົວຢ່າງດາຍກ່ຽວກັບວັດສະດຸມັນແມ່ນການບໍ່ສາມາດແບບ.
ສະຕິກອນທີ່ບໍ່ຮັບຮູບພາບ
ພວກເຮົາສາມາດໃຊ້ສະຕິກອນທີ່ບໍ່ຮັບຮູບພາບ.
ນີ້ຫມີຄວາມໝາຍວ່າພວກເຮົາບໍ່ຕ້ອງບັນທືກຈຸດສະຕິກອນສະເພາະໜຶ່ງສະຕິກອນໃນວິທີ reshape.
ສົ່ງ -1
ຄືນ NumPy ຈະເລືອກຕັ້ງເປັນຈຸດນັ້ນສຳລັບເຈົ້າ.
ຄວາມກຳລັງ
ການປ່ຽນ 8 ອັນສະນະ 1D ມາເປັນ 3D 2x2 ອັນສະນະ:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(2, 2, -1) print(newarr)
ຄວາມເຫັນ:ພວກເຮົາບໍ່ສາມາດປ່ຽນ -1
ສົ່ງໃຫ້ຫຼາຍຊັ້ນຫຼາຍຫຼາຍຊັ້ນ
ການປ່ຽນຈຸດທີ່ວັດສະດຸ
ການປ່ຽນຈຸດທີ່ວັດສະດຸຫຼາຍຊັ້ນເປັນວັດສະດຸ 1D ແມ່ນການປ່ຽນວັດສະດຸຫຼາຍຊັ້ນເປັນວັດສະດຸ 1D。
ພວກເຮົາສາມາດໃຊ້ reshape(-1)
ເພື່ອເຮັດຕາມນັ້ນ
ຄວາມກຳລັງ
ການແປງວັດສະດຸເປັນວັດສະດຸ 1D:
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) newarr = arr.reshape(-1) print(newarr)
ຄວາມເຫັນ:ມີຫຼາຍພາສາສາມາດປ່ຽນຄວາມຮູບແບບຂອງວັດສະດຸ numpy flatten, ravel ຂອງຈຸດທີ່ມີຄວາມຮູບແບບຫຼາຍຊັ້ນທີ່ສາມາດປ່ຽນລະບົບຂອງວັດສະດຸ rot90, flip, fliplr, flipud ທີ່ຈະປ່ຽນຕົວກັນຄືນທີ່ມີຄວາມຮູບແບບຫຼາຍຊັ້ນອີກຫຼາຍຊັ້ນຫຼາຍຫຼາຍຊັ້ນ。ບັນດາພາສານນີ້ກ່ຽວກັບພາສາ numpy ສະຕິກອນຫຼາຍສາກສະຕິກອນຫຼາຍສາກສະຕິກອນຫຼາຍສາກສະຕິກອນ。