NumPy - Mảng từ dữ liệu hiện có
Trong chương này, chúng ta sẽ thảo luận về cách tạo một mảng từ dữ liệu hiện có.
numpy.asarray
Hàm này tương tự như numpy.array ngoại trừ thực tế là nó có ít tham số hơn. Quy trình này rất hữu ích để chuyển đổi chuỗi Python thành ndarray.
numpy.asarray(a, dtype = None, order = None)
Hàm tạo nhận các tham số sau.
Sr.No. | Mô tả về Thông Số |
---|---|
1 | a Nhập dữ liệu dưới bất kỳ hình thức nào như danh sách, danh sách các bộ giá trị, bộ giá trị, bộ giá trị hoặc bộ nhiều danh sách |
2 | dtype Theo mặc định, kiểu dữ liệu của dữ liệu đầu vào được áp dụng cho mảng kết quả |
3 | order C (hàng chính) hoặc F (cột chính). C là mặc định |
Các ví dụ sau đây cho thấy cách bạn có thể sử dụng asarray chức năng.
ví dụ 1
# convert list to ndarray
import numpy as np
x = [1,2,3]
a = np.asarray(x)
print a
Đầu ra của nó sẽ như sau:
[1 2 3]
Ví dụ 2
# dtype is set
import numpy as np
x = [1,2,3]
a = np.asarray(x, dtype = float)
print a
Bây giờ, kết quả sẽ như sau:
[ 1. 2. 3.]
Ví dụ 3
# ndarray from tuple
import numpy as np
x = (1,2,3)
a = np.asarray(x)
print a
Đầu ra của nó sẽ là -
[1 2 3]
Ví dụ 4
# ndarray from list of tuples
import numpy as np
x = [(1,2,3),(4,5)]
a = np.asarray(x)
print a
Ở đây, kết quả sẽ như sau:
[(1, 2, 3) (4, 5)]
numpy.frombuffer
Hàm này diễn giải một bộ đệm là mảng một chiều. Bất kỳ đối tượng nào để lộ giao diện đệm được sử dụng làm tham số để trả vềndarray.
numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)
Hàm tạo nhận các tham số sau.
Sr.No. | Mô tả về Thông Số |
---|---|
1 | buffer Bất kỳ đối tượng nào để lộ giao diện bộ đệm |
2 | dtype Kiểu dữ liệu của ndarray trả về. Mặc định là thả nổi |
3 | count Số mục cần đọc, mặc định -1 có nghĩa là tất cả dữ liệu |
4 | offset Vị trí bắt đầu để đọc. Mặc định là 0 |
Thí dụ
Các ví dụ sau đây chứng minh việc sử dụng frombuffer chức năng.
import numpy as np
s = 'Hello World'
a = np.frombuffer(s, dtype = 'S1')
print a
Đây là đầu ra của nó -
['H' 'e' 'l' 'l' 'o' ' ' 'W' 'o' 'r' 'l' 'd']
numpy.fromiter
Chức năng này xây dựng một ndarrayđối tượng từ bất kỳ đối tượng có thể lặp lại nào. Một mảng một chiều mới được trả về bởi hàm này.
numpy.fromiter(iterable, dtype, count = -1)
Ở đây, hàm tạo nhận các tham số sau.
Sr.No. | Mô tả về Thông Số |
---|---|
1 | iterable Mọi đối tượng có thể lặp lại |
2 | dtype Kiểu dữ liệu của mảng kết quả |
3 | count Số lượng các mục được đọc từ trình lặp. Mặc định là -1 có nghĩa là tất cả dữ liệu sẽ được đọc |
Các ví dụ sau đây cho thấy cách sử dụng range()hàm để trả về một đối tượng danh sách. Một trình lặp của danh sách này được sử dụng để tạo thành mộtndarray vật.
ví dụ 1
# create list object using range function
import numpy as np
list = range(5)
print list
Đầu ra của nó như sau:
[0, 1, 2, 3, 4]
Ví dụ 2
# obtain iterator object from list
import numpy as np
list = range(5)
it = iter(list)
# use iterator to create ndarray
x = np.fromiter(it, dtype = float)
print x
Bây giờ, kết quả sẽ như sau:
[0. 1. 2. 3. 4.]