Bird
Raised Fist0
NumPydata~5 mins

np.savetxt() and np.loadtxt() for text in NumPy - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does np.savetxt() do in NumPy?

np.savetxt() saves a NumPy array to a text file. It writes the array data in a readable text format, like CSV or space-separated values.

Click to reveal answer
beginner
How do you load data from a text file into a NumPy array?

You use np.loadtxt(). It reads numbers from a text file and returns them as a NumPy array.

Click to reveal answer
intermediate
What parameter in np.savetxt() controls the format of saved numbers?

The fmt parameter controls how numbers are saved, for example, fmt='%.2f' saves numbers with two decimal places.

Click to reveal answer
intermediate
Can np.loadtxt() read files with comments or headers?

Yes, you can skip lines with skiprows and ignore comments with the comments parameter.

Click to reveal answer
beginner
What happens if you save a 2D array with np.savetxt() and then load it back with np.loadtxt()?

You get the same 2D array back, as np.savetxt() writes rows line by line and np.loadtxt() reads them back into a 2D array.

Click to reveal answer
Which function saves a NumPy array to a text file?
Anp.savetxt()
Bnp.loadtxt()
Cnp.save()
Dnp.load()
How do you skip the first 3 lines when loading a text file with np.loadtxt()?
Askiprows=3
Bskip=3
Crows=3
Dignore=3
What does the fmt parameter in np.savetxt() control?
ADelimiter character
BData type
CFile name
DNumber format in the file
If a text file has lines starting with '#', how can np.loadtxt() ignore them?
Aignore='#'
Bskiprows='#'
Ccomments='#'
Dheader='#'
What type of data does np.loadtxt() return?
AList
BNumPy array
CDictionary
DString
Explain how to save a 2D NumPy array to a text file and then load it back.
Think about writing and reading files with NumPy functions.
You got /5 concepts.
    Describe how to handle text files with headers or comments when loading data using NumPy.
    Consider parameters that help ignore unwanted lines.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of np.savetxt() in NumPy?
      easy
      A. To convert a NumPy array into a Python list
      B. To load a NumPy array from a binary file
      C. To save a NumPy array to a text file in a readable format
      D. To display a NumPy array on the screen

      Solution

      1. Step 1: Understand the function purpose

        np.savetxt() is designed to save arrays to text files, making the data readable and shareable.
      2. Step 2: Compare with other options

        Options B, C, and D describe different functions or actions unrelated to saving arrays as text files.
      3. Final Answer:

        To save a NumPy array to a text file in a readable format -> Option C
      4. Quick Check:

        np.savetxt() saves arrays to text files [OK]
      Hint: Remember: savetxt saves arrays as readable text files [OK]
      Common Mistakes:
      • Confusing savetxt with loadtxt
      • Thinking it saves to binary files
      • Assuming it converts arrays to lists
      2. Which of the following is the correct syntax to save a 2D NumPy array arr to a file named data.txt using np.savetxt()?
      easy
      A. np.savetxt('data.txt', arr)
      B. np.savetxt(arr, 'data.txt')
      C. np.save('data.txt', arr)
      D. np.loadtxt('data.txt', arr)

      Solution

      1. Step 1: Recall the correct parameter order for np.savetxt()

        The first argument is the filename (string), the second is the array to save.
      2. Step 2: Check each option

        np.savetxt('data.txt', arr) matches the correct order. np.savetxt(arr, 'data.txt') reverses the order. np.save('data.txt', arr) uses np.save which saves binary files. np.loadtxt('data.txt', arr) uses np.loadtxt which reads files, not saves.
      3. Final Answer:

        np.savetxt('data.txt', arr) -> Option A
      4. Quick Check:

        Filename first, array second in np.savetxt() [OK]
      Hint: Filename goes first, array second in np.savetxt() [OK]
      Common Mistakes:
      • Swapping filename and array arguments
      • Using np.save instead of np.savetxt
      • Confusing np.loadtxt with np.savetxt
      3. What will be the output of the following code?
      import numpy as np
      arr = np.array([[1, 2], [3, 4]])
      np.savetxt('temp.txt', arr, fmt='%d', delimiter=',')
      loaded = np.loadtxt('temp.txt', delimiter=',', dtype=int)
      print(loaded)
      medium
      A. SyntaxError
      B. [[1, 2], [3, 4]]
      C. [1 2 3 4]
      D. [[1 2] [3 4]]

      Solution

      1. Step 1: Understand saving with delimiter and format

        The array is saved as text with comma delimiter and integer format, so the file lines look like '1,2' and '3,4'.
      2. Step 2: Loading with matching delimiter and dtype

        Using np.loadtxt with delimiter=',' and dtype=int reads the file back into a 2D integer array.
      3. Step 3: Print output format

        Printing a NumPy array shows it with spaces between elements and new lines for rows, so output is [[1 2] [3 4]].
      4. Final Answer:

        [[1 2] [3 4]] -> Option D
      5. Quick Check:

        Loadtxt reads saved text back as array [OK]
      Hint: Match delimiter and dtype when loading saved text [OK]
      Common Mistakes:
      • Expecting list output instead of array
      • Missing delimiter in loadtxt causing errors
      • Using wrong dtype causing float instead of int
      4. Identify the error in this code snippet:
      import numpy as np
      arr = np.array([1.5, 2.5, 3.5])
      np.savetxt('file.txt', arr, fmt='%d')
      loaded = np.loadtxt('file.txt', dtype=float)
      print(loaded)
      medium
      A. Using '%d' format truncates floats to integers when saving
      B. np.loadtxt cannot read float data
      C. Missing delimiter argument causes error
      D. Array must be 2D to use np.savetxt

      Solution

      1. Step 1: Check format string in np.savetxt()

        The format '%d' saves numbers as integers, so 1.5, 2.5, 3.5 become 1, 2, 3 in the file.
      2. Step 2: Loading with dtype=float

        Loading back as float converts these integers to floats 1.0, 2.0, 3.0, losing original decimal parts.
      3. Step 3: Identify the error

        The error is the format string truncates data, causing loss of precision.
      4. Final Answer:

        Using '%d' format truncates floats to integers when saving -> Option A
      5. Quick Check:

        Format string controls saved data type [OK]
      Hint: Use '%f' to save floats, not '%d' [OK]
      Common Mistakes:
      • Assuming loadtxt can't read floats
      • Thinking delimiter is required for 1D arrays
      • Believing np.savetxt requires 2D arrays only
      5. You have a 2D NumPy array with mixed integer and float values. You want to save it to a text file with comma separation and load it back preserving the exact values. Which code snippet correctly achieves this?
      hard
      A. np.savetxt('data.csv', arr, delimiter=',', fmt='%d') loaded = np.loadtxt('data.csv', delimiter=',', dtype=float)
      B. np.savetxt('data.csv', arr, delimiter=',', fmt='%.2f') loaded = np.loadtxt('data.csv', delimiter=',')
      C. np.savetxt('data.csv', arr, delimiter=';') loaded = np.loadtxt('data.csv', delimiter=',')
      D. np.savetxt('data.csv', arr) loaded = np.loadtxt('data.csv', delimiter=',')

      Solution

      1. Step 1: Choose correct format for mixed data

        Using fmt='%.2f' saves all numbers as floats with 2 decimals, preserving float and integer values.
      2. Step 2: Match delimiter in save and load

        Both saving and loading use delimiter=',' ensuring data is correctly split on commas.
      3. Step 3: Check other options for errors

        np.savetxt('data.csv', arr, delimiter=',', fmt='%d') loaded = np.loadtxt('data.csv', delimiter=',', dtype=float) uses '%d' which truncates floats. np.savetxt('data.csv', arr, delimiter=';') loaded = np.loadtxt('data.csv', delimiter=',') mismatches delimiters. np.savetxt('data.csv', arr) loaded = np.loadtxt('data.csv', delimiter=',') saves without delimiter but loads with comma, causing errors.
      4. Final Answer:

        np.savetxt('data.csv', arr, delimiter=',', fmt='%.2f') loaded = np.loadtxt('data.csv', delimiter=',') -> Option B
      5. Quick Check:

        Match format and delimiter to preserve data [OK]
      Hint: Use float format and matching delimiter both ways [OK]
      Common Mistakes:
      • Using integer format for float data
      • Mismatching delimiters between save and load
      • Not specifying format causing precision loss