• Post author:
  • Post category:Pandas
  • Post last modified:April 24, 2024
  • Reading time:14 mins read
You are currently viewing Pandas Retrieve Number of Columns

How to retrieve number of columns from Pandas DataFrame? To retrieve the number of columns in a Pandas DataFrame, you can use the shape attribute, which returns a tuple representing the dimensions of the DataFrame. The first element of the tuple is the number of rows, and the second element is the number of columns.

Advertisements

In this article, I will explain how to retrieve the number of columns by using axes(), len(), shape(), and info() functions with examples.

Key Points –

  • Use the shape attribute of a Pandas DataFrame to retrieve the number of columns.
  • shape returns a tuple representing the dimensions of the DataFrame, where the first element denotes the number of rows and the second element denotes the number of columns.
  • Access the number of columns by indexing the second element of the tuple returned by shape.
  • The number of columns can also be obtained using the len() function on the DataFrame’s columns attribute.

Related: Get All Header Columns from pandas DataFrame

Quick Examples of Retrieve Number Columns

If you are in a hurry, below are some quick examples of how to retrieve number columns from Pandas DataFrame.


# Quick examples of retrieve number columns 

# Using df.axes() method 
# To get number columns
cols = len(df.axes[1])
count = str(cols)

# Using DataFrame.len() method 
count = len(df.columns)

# Get the number of columns and rows
shape = df.shape

# Using DataFrame.shape method
count = df.shape[1]

# Using DataFrame.info() method 
df.info()

To run some examples of retrieving number columns, let’s create a DataFrame with a few rows and columns.


# Create DataFrame
import pandas as pd
technologies = {
    'Courses':["Spark","PySpark","Python","pandas","Hadoop"],
    'Fee' :[20000,25000,22000,24000,30000],
    'Duration':['30days','40days','35days','60days','50days'],
    'Discount':[1000,2300,2500,2000,3000]
              }
index_labels=['r1','r2','r3','r4','r5']
df = pd.DataFrame(technologies,index=index_labels)
print(df)

Yields below output.


# Output:
    Courses    Fee Duration  Discount
r1    Spark  20000   30days      1000
r2  PySpark  25000   40days      2300
r3   Python  22000   35days      2500
r4   pandas  24000   60days      2000
r5   Hadoop  30000   50days      3000

Retrieve Number Columns using DataFrame.axes()

You can retrieve the number of columns in a Pandas DataFrame using the axes attribute. The axes attribute returns a list of axis labels, where the first element represents the row axis labels and the second element represents the column axis labels. To get the number of columns, you can use the len() function on the second element of the axes list.


# Using df.axes() method 
# To get number of columns
cols = len(df.axes[1])
count = str(cols)
print("Get number of Columns: " + count)

Yields below output.


# Output:
Get number of Columns: 4

Using DataFrame.len() Method

Alternatively, you can also retrieve the number of columns in a DataFrame using the len() function with the columns attribute.


# Using DataFrame.len() method 
count = len(df.columns)
print("Get number of Columns:", count)

# Output:
# Get number of Columns: 4

In the above examples, len(df.columns) gets you the number of columns. Here, the df.columns return the DataFrame column names as a list.

Using DataFrame.shape() Method

Similarly, to retrieve the number of columns in a DataFrame using the shape method, you can access the second element of the tuple returned by shape, which represents the number of columns.


# Get the number of columns and rows
df.shape

# Using DataFrame.shape[1]
# To get columns count
columns_count = df.shape[1]
print("Get number of Columns:", columns_count)

# Output:
# Get number of Columns: 4

Using DataFrame.info() Method

The info() method in Pandas provides a concise summary of the DataFrame, including information about the number of columns. You can use it to quickly retrieve the number of columns.


# Using DataFrame.info() method 
df.info()

This method will display information about the DataFrame, including the number of columns and their data types, non-null values, and memory usage. This example yields the below output. 


# Output:
<class 'pandas.core.frame.DataFrame'>
Index: 5 entries, r1 to r5
Data columns (total 4 columns):
 #   Column    Non-Null Count  Dtype 
---  ------    --------------  ----- 
 0   Courses   5 non-null      object
 1   Fee       5 non-null      int64 
 2   Duration  5 non-null      object
 3   Discount  5 non-null      int64 
dtypes: int64(2), object(2)
memory usage: 200.0+ bytes

Complete Example


import pandas as pd
technologies = {
    'Courses':["Spark","PySpark","Python","pandas","Hadoop"],
    'Fee' :[20000,25000,22000,24000,30000],
    'Duration':['30days','40days','35days','60days','50days'],
    'Discount':[1000,2300,2500,2000,3000]
              }
index_labels=['r1','r2','r3','r4','r5']
df = pd.DataFrame(technologies,index=index_labels)
print(df)

# Using df.axes() method 
# To get number columns
cols = len(df.axes[1])
count = str(cols)
print("Get number of Columns: " + count)

# Using DataFrame.len() method 
count = len(df.columns)
print("Get number of Columns:", count)

# Using DataFrame.shape method
count = df.shape[1]
print("Get number of Columns:", count)

# Get the number of columns and rows
shape = df.shape
print(shape)

# Using DataFrame.info() method 
df.info()

Frequently Asked Questions on Retrieve Number of Columns

How can I retrieve the number of columns in a Pandas DataFrame?

You can retrieve the number of columns in a Pandas DataFrame using various methods such as shape, len(), info(), or accessing the columns attribute.

How can I use the len() function to find the number of columns?

You can use the len() function with the columns attribute of a Pandas DataFrame to find the number of columns. For example: num_columns = len(df.columns).

Can you explain how to use the shape method to retrieve the number of columns?

The shape method returns a tuple representing the dimensions of the DataFrame, where the first element denotes the number of rows and the second element denotes the number of columns. You can access the number of columns by indexing the second element of the tuple, like this: num_columns = df.shape[1].

What does the info() method provide, and how does it help retrieve the number of columns?

The info() method provides a concise summary of the DataFrame, including information about the number of columns, their data types, non-null values, and memory usage. While it doesn’t directly return the number of columns, it displays this information, making it easy to visually inspect.

Conclusion

In this article, you have learned how to retrieve the number of columns from DataFrame using axes(), len(), shape() and info() functions with examples. When you use the shape, use the shape[1] to retrieve the number of columns.

Happy Learning !!

References

Malli

Malli is an experienced technical writer with a passion for translating complex Python concepts into clear, concise, and user-friendly articles. Over the years, he has written hundreds of articles in Pandas, NumPy, Python, and takes pride in ability to bridge the gap between technical experts and end-users.

Leave a Reply