Import các kiểu dữ liệu khác nhau
Tệp seaslug.txt
- có phần header dạng văn bản, gồm các chuỗi
- được phân tách bằng tab.
Dữ liệu này là tỷ lệ phần trăm ấu trùng sên biển đã biến thái trong một khoảng thời gian nhất định. Đọc thêm tại đây.
Do có header, nếu bạn thử import nguyên trạng bằng np.loadtxt(), Python sẽ ném ra ValueError và cho biết could not convert string to float. Có hai cách xử lý: trước hết, bạn có thể đặt đối số kiểu dữ liệu dtype bằng str (chuỗi).
Hoặc, như đã thấy trước đó, bạn có thể bỏ qua hàng đầu tiên bằng đối số skiprows.
Bài tập này là một phần của khóa học
Nhập dữ liệu vào Python: Giới thiệu
Hướng dẫn bài tập
- Hoàn thành lần gọi đầu tiên tới
np.loadtxt()bằng cách truyềnfilelàm đối số đầu tiên. - Chạy
print(data[0])để in phần tử đầu tiên củadata. - Hoàn thành lần gọi thứ hai tới
np.loadtxt(). Tệpfilebạn đang import được phân tách bằng tab, kiểu dữ liệu làfloat, và bạn muốn bỏ qua hàng đầu tiên. - In phần tử thứ 10 của
data_floatbằng cách hoàn thiện lệnhprint(). Hãy dựa theo lệnhprint()trước đó. - Chạy phần còn lại của mã để trực quan hóa dữ liệu.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Assign filename: file
file = 'seaslug.txt'
# Import file: data
data = np.loadtxt(____, delimiter='\t', dtype=str)
# Print the first element of data
print(data[0])
# Import file as floats and skip the first row: data_float
data_float = np.loadtxt(____, delimiter='____', dtype=____, skiprows=____)
# Print the 10th element of data_float
print(____)
# Plot a scatterplot of the data
plt.scatter(data_float[:, 0], data_float[:, 1])
plt.xlabel('time (min.)')
plt.ylabel('percentage of larvae')
plt.show()