To convert a Pandas DataFrame column to lowercase, you can utilize methods like str.lower()
, map()
, apply()
, or a lambda
function. This method allows you to apply a string function directly to each element of the column. In this article, I will explain how to convert the entire contents of a column from uppercase to lowercase in a Pandas DataFrame.
Key Points –
- Pandas provides the
str.lower()
method to convert string values to lowercase within a DataFrame column. - Apply the
str.lower()
method to the desired column directly, or via theapply()
function. - Ensure the column data type is compatible with string operations before applying
str.lower()
. - The
str.lower()
method works efficiently with both string and object data types in Pandas DataFrame columns.
Quick Examples of Convert Lowercase Column Values
Below are quick examples of converting lowercase column values in DataFrame.
# Quick examples of convert lowercase column values
# Example 1: convert lowercase column
# Using str.lower()
df['Courses'] = df['Courses'].str.lower()
# Example 2: convert lowercase column
# Using apply()
df['Courses'] = df['Courses'].apply(str.lower)
# Example 3: Use apply() & lambda function
df['Courses'].apply(lambda x: x.lower())
# Example 4: Convert pandas column
# To lowercase use map()
df['Courses'] = df['Courses'].map(str.lower)
To run some examples of converting pandas column to lowercase, let’s create Pandas DataFrame.
import pandas as pd
import numpy as np
technologies= ({
'Courses':["SPARK","PYSPARK","HADOOP","PANDAS"],
'Fee' :[22000,25000,24000,26000],
'Duration':['30days','50days','40days','60days'],
'Discount':[1000,2300,2500,1400]
})
df = pd.DataFrame(technologies)
print("Create DataFrame:\n", df)
Yields below output.
Pandas Convert Column to Lowercase using str.lower()
Pandas DataFrame column values can be converted to lowercase using the str.lower()
function. This is a function from Series hence you can easily apply this function to a specific column. This syntax converts specified column values from uppercase
to lowercase
. Here we convert the column values and assign it back to the same column.
# convert lowercase column use str.lower()
df['Courses'] = df['Courses'].str.lower()
print("Convert Pandas column to lower case:\n", df)
Yields below output.
Convert Pandas Column to Lowercase using apply()
Alternatively, you can use the apply()
function to convert a column in a Pandas DataFrame to lowercase. For instance, you use the apply()
function to apply the str.lower()
function to each element in the ‘Courses’ column of the DataFrame df
. The str.lower()
function is a built-in Python function that converts strings to lowercase.
# convert lowercase column use apply()
df['Courses'] = df['Courses'].apply(str.lower)
print("Convert Pandas column to lower case:\n", df)
# Output:
# Convert Pandas column to lower case:
# Courses Fee Duration Discount
# 0 spark 22000 30days 1000
# 1 pyspark 25000 50days 2300
# 2 hadoop 24000 40days 2500
# 3 pandas 26000 60days 1400
The syntax df['Courses']=df['Courses'].apply(str.lower)
effectively changes uppercase column values to lowercase.
Using apply() & Lambda
By utilizing the apply() function and passing a lambda function, specific column values in a DataFrame can be converted from uppercase to lowercase. In this approach, the lambda expression constructs an anonymous function.
# Use apply() & lambda function
df['Courses'].apply(lambda x: x.lower())
print("Convert Pandas column to lower case:\n", df)
# Output:
# Convert Pandas column to lower case:
# Courses Fee Duration Discount
# 0 spark 22000 30days 1000
# 1 pyspark 25000 50days 2300
# 2 hadoop 24000 40days 2500
# 3 pandas 26000 60days 1400
Use map() Function
Similarly, to convert column values in a given DataFrame from uppercase to lowercase, you can use the map()
function. To achieve this, you pass the str.lower()
function into the map()
function and then call the specified column of the DataFrame. The syntax df['Courses']=df['Courses'].map(str.lower)
effectively converts uppercase values in the column to lowercase.
# Convert pandas column to lowercase use map()
df['Courses'] = df['Courses'].map(str.lower)
print("Convert Pandas column to lower case:\n", df)
# Output:
# Convert Pandas column to lower case:
# Courses Fee Duration Discount
# 0 spark 22000 30days 1000
# 1 pyspark 25000 50days 2300
# 2 hadoop 24000 40days 2500
# 3 pandas 26000 60days 1400
Complete Example For Lowercase Column Values
import pandas as pd
import numpy as np
technologies= ({
'Courses':["SPARK","PYSPARK","HADOOP","PANDAS"],
'Fee' :['22000','25000','24000','26000'],
'Duration':['30days','50days','40days','60days'],
'Discount':['1000','2300','2500','1400']
})
df = pd.DataFrame(technologies)
print(df)
# convert lowercase column use str.lower()
df['Courses'] = df['Courses'].str.lower()
print(df)
# convert lowercase column use apply()
df['Courses'] = df['Courses'].apply(str.lower)
print(df)
# Use apply() & lambda function
df['Courses'].apply(lambda x: x.lower())
print(df)
# Convert pandas column to lowercase use map()
df['Courses'] = df['Courses'].map(str.lower)
print(df)
Conclusion
In this article, we explored various methods to convert specified column values in a DataFrame from uppercase to lowercase. By leveraging functions like str.lower()
, map()
, apply()
, and lambda
functions, we achieved this transformation efficiently.
Happy Learning !!
Related Articles
- Convert Pandas Index to List
- Pandas Convert String to Integer
- How to Use NOT IN Filter in Pandas
- Pandas DataFrame reindex() Function
- How to Convert List to Pandas Series
- Pandas Series.replace() – Replace Values
- Convert NumPy Array to Pandas DataFrame
- Convert Pandas Series of Lists to One Series
- Pandas – Convert DataFrame to JSON String
- Pandas – Convert DataFrame to Dictionary (Dict)