Bắt đầu ngayBắt đầu miễn phí

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

Xem khóa học

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ền file làm đối số đầu tiên.
  • Chạy print(data[0]) để in phần tử đầu tiên của data.
  • Hoàn thành lần gọi thứ hai tới np.loadtxt(). Tệp file bạ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_float bằng cách hoàn thiện lệnh print(). Hãy dựa theo lệnh print() 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()
Chỉnh sửa và Chạy Mã