Bird
Raised Fist0
Data Analysis Pythondata~10 mins

First data analysis walkthrough in Data Analysis Python - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to load the CSV file into a DataFrame.

Data Analysis Python
import pandas as pd

df = pd.[1]('data.csv')
Drag options to blanks, or click blank then click option'
Aread_csv
Bread_excel
Cto_csv
Dread_json
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'read_excel' for CSV files.
Using 'to_csv' which is for saving files.
2fill in blank
medium

Complete the code to show the first 5 rows of the DataFrame.

Data Analysis Python
print(df.[1]())
Drag options to blanks, or click blank then click option'
Ahead
Btail
Csample
Dinfo
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'tail' which shows the last rows.
Using 'info' which shows summary info, not rows.
3fill in blank
hard

Fix the error in the code to calculate the mean of the 'age' column.

Data Analysis Python
mean_age = df['age'].[1]()
Drag options to blanks, or click blank then click option'
Asum
Bmean
Ccount
Dmedian
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'sum' which adds values but does not average.
Using 'count' which counts non-null values.
4fill in blank
hard

Fill both blanks to create a dictionary of word lengths for words longer than 3 letters.

Data Analysis Python
lengths = {word: [1] for word in words if [2]
Drag options to blanks, or click blank then click option'
Alen(word)
Bword > 3
Clen(word) > 3
Dword
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'word > 3' which compares string to number.
Using 'word' instead of length in the dictionary value.
5fill in blank
hard

Fill all three blanks to create a filtered dictionary with uppercase keys and values greater than 0.

Data Analysis Python
result = [1]: [2] for k, v in data.items() if v [3] 0}
Drag options to blanks, or click blank then click option'
Ak.upper()
Bv
C>
Dk.lower()
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'k.lower()' instead of uppercase.
Using '<' instead of '>' for filtering.

Practice

(1/5)
1. What is the main purpose of using head() on a DataFrame during the first data analysis walkthrough?
easy
A. To check the data types of each column
B. To get summary statistics of numerical columns
C. To quickly see the first few rows of the data
D. To remove missing values from the data

Solution

  1. Step 1: Understand the function head()

    The head() function shows the first few rows of a DataFrame, usually the first 5 rows by default.
  2. Step 2: Purpose in data analysis walkthrough

    Seeing the first few rows helps you quickly understand what kind of data you have and check if it loaded correctly.
  3. Final Answer:

    To quickly see the first few rows of the data -> Option C
  4. Quick Check:

    head() shows first rows [OK]
Hint: Remember: head() shows top rows fast [OK]
Common Mistakes:
  • Confusing head() with describe()
  • Thinking head() gives statistics
  • Assuming head() cleans data
2. Which of the following is the correct syntax to get a summary of data types and non-null counts in a DataFrame named df?
easy
A. df.describe()
B. df.info()
C. df.head()
D. df.summary()

Solution

  1. Step 1: Identify the function for data types and non-null counts

    The info() method on a DataFrame shows data types and counts of non-null values per column.
  2. Step 2: Match syntax with DataFrame df

    Calling df.info() correctly applies this method to the DataFrame named df.
  3. Final Answer:

    df.info() -> Option B
  4. Quick Check:

    info() shows data types and counts [OK]
Hint: Use info() to check data types and missing data [OK]
Common Mistakes:
  • Using describe() to check data types
  • Trying summary() which does not exist
  • Confusing head() with info()
3. Given the following code:
import pandas as pd
data = {'age': [25, 30, 22, 40, 28], 'salary': [50000, 60000, 45000, 80000, 52000]}
df = pd.DataFrame(data)
summary = df.describe()

What will be the output of summary.loc['mean', 'salary']?
medium
A. 52000.0
B. SyntaxError
C. 60000.0
D. 57400.0

Solution

  1. Step 1: Calculate the mean of the 'salary' column

    Sum salaries: 50000 + 60000 + 45000 + 80000 + 52000 = 287000. Number of entries: 5. Mean = 287000 / 5 = 57400.0.
  2. Step 2: Understand describe() output

    The describe() method returns a DataFrame with statistics including 'mean' as an index row. Accessing summary.loc['mean', 'salary'] gives the mean salary value.
  3. Final Answer:

    57400.0 -> Option D
  4. Quick Check:

    Mean salary = 57400.0 [OK]
Hint: Sum values and divide by count for mean [OK]
Common Mistakes:
  • Adding incorrectly or missing one value
  • Confusing mean with median or mode
  • Using wrong index or column name
4. You run the following code but get an error:
import pandas as pd
data = {'name': ['Alice', 'Bob'], 'age': [25, 30]}
df = pd.DataFrame(data)
print(df.describe())

What is the most likely reason for the error or unexpected output?
medium
A. The describe() method cannot handle string columns by default
B. The DataFrame is missing a numeric column
C. The DataFrame is empty
D. The describe() method requires a parameter

Solution

  1. Step 1: Check DataFrame columns and types

    The DataFrame has a string column 'name' and a numeric column 'age'.
  2. Step 2: Understand describe() behavior

    By default, describe() summarizes only numeric columns. It ignores string columns unless specified.
  3. Final Answer:

    The describe() method cannot handle string columns by default -> Option A
  4. Quick Check:

    describe() skips strings by default [OK]
Hint: describe() defaults to numeric columns only [OK]
Common Mistakes:
  • Expecting describe() to summarize strings automatically
  • Thinking DataFrame is empty
  • Assuming describe() needs parameters always
5. You have a DataFrame df with columns ['product', 'price', 'quantity']. You want to quickly find the average price of products that have quantity greater than 10. Which code snippet correctly performs this first data analysis step?
hard
A. df[df['quantity'] > 10]['price'].mean()
B. df['price'].mean(df['quantity'] > 10)
C. df.mean()['price'] > 10
D. df.describe('price' > 10)

Solution

  1. Step 1: Filter rows where quantity > 10

    Use df[df['quantity'] > 10] to select only rows with quantity greater than 10.
  2. Step 2: Calculate mean of 'price' column on filtered data

    Access the 'price' column of filtered rows and call mean() to get average price.
  3. Final Answer:

    df[df['quantity'] > 10]['price'].mean() -> Option A
  4. Quick Check:

    Filter then mean() gives correct average [OK]
Hint: Filter first, then calculate mean [OK]
Common Mistakes:
  • Passing condition inside mean() incorrectly
  • Using mean() on entire DataFrame without filtering
  • Wrong syntax for describe()
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard