python pandas applymap example
applymap is used to apply functions to each element of DataFrame, and map is now recommended. 1. Turn the value into square: df.applymap(lambda x: x ** 2). 2. Format floating point number: df.applymap(lambda x: f"{x:.2f}"), and the data becomes a string. 3. Process by type: df.applymap(mark_sign) marks plus or negative zero. Map or applymap should be used when element-by-element operation and function input and output is a single value, it is suitable for unified conversion independent of row and column context. Pandas 2.1 recommends df.map() instead of applymap, which has consistent functions and is more modern. This method is suitable for simple and easy-to-read element-level transformations.
applymap
is a method in Pandas for applying a function to each element of a DataFrame. It is suitable for scenarios where each value of the entire DataFrame needs to be operated element by element. The following is a few practical examples to illustrate the usage of applymap
.

✅ Basic syntax
df.applymap(func)
-
func
: A function that accepts a single value and returns a new value. - Applies only to DataFrame (not to Series).
? Example 1: Convert all values to squares
import pandas as pd df = pd.DataFrame({ 'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9] }) result = df.applymap(lambda x: x ** 2) print(result)
Output:
ABC 0 1 16 49 1 4 25 64 2 9 36 81
? Example 2: Format the floating point number as a string that retains two decimal places
df = pd.DataFrame({ 'X': [1.1234, 2.3456], 'Y': [3.5678, 4.8765] }) formatted = df.applymap(lambda x: f"{x:.2f}") print(formatted)
Output:

XY 0 1.12 3.57 1 2.35 4.88
Note: The data type becomes a string at this time.
? Example 3: Process according to the type of value (such as marking positive and negative numbers)
def mark_sign(x): if x > 0: return 'positive' elif x < 0: return 'negative' else: return 'zero' df = pd.DataFrame({ 'col1': [-1, 0, 2], 'col2': [3, -4, 0] }) result = df.applymap(mark_sign) print(result)
Output:

col1 col2 0 negative positive 1 zero negative 2 positive zero
⚠️ Notes
-
applymap
has been marked as an alternative to "recommended to use.map()
or.apply()
" in newer versions of Pandas, but it is still available. - More modern writing methods can use
df.map()
(recommended in Pandas 2.1), and the functions are almost the same:
# New writing method (recommended) df.map(lambda x: x ** 2)
The
map
method now also supports DataFrame, and the behavior is the same as thatapplymap
.
✅ When to use applymap?
- The same processing is required for each element in the DataFrame.
- Operations are element-level and do not depend on row/column context.
- Function input and output are all single values.
Basically that's it. applymap
(or current map
) is suitable for simple and unified element conversion, with concise writing and easy to read. A small trick that is not complicated but easily overlooked.
The above is the detailed content of python pandas applymap example. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Install pyodbc: Use the pipinstallpyodbc command to install the library; 2. Connect SQLServer: Use the connection string containing DRIVER, SERVER, DATABASE, UID/PWD or Trusted_Connection through the pyodbc.connect() method, and support SQL authentication or Windows authentication respectively; 3. Check the installed driver: Run pyodbc.drivers() and filter the driver name containing 'SQLServer' to ensure that the correct driver name is used such as 'ODBCDriver17 for SQLServer'; 4. Key parameters of the connection string

Pythoncanbeoptimizedformemory-boundoperationsbyreducingoverheadthroughgenerators,efficientdatastructures,andmanagingobjectlifetimes.First,usegeneratorsinsteadofliststoprocesslargedatasetsoneitematatime,avoidingloadingeverythingintomemory.Second,choos

Introduction to Statistical Arbitrage Statistical Arbitrage is a trading method that captures price mismatch in the financial market based on mathematical models. Its core philosophy stems from mean regression, that is, asset prices may deviate from long-term trends in the short term, but will eventually return to their historical average. Traders use statistical methods to analyze the correlation between assets and look for portfolios that usually change synchronously. When the price relationship of these assets is abnormally deviated, arbitrage opportunities arise. In the cryptocurrency market, statistical arbitrage is particularly prevalent, mainly due to the inefficiency and drastic fluctuations of the market itself. Unlike traditional financial markets, cryptocurrencies operate around the clock and their prices are highly susceptible to breaking news, social media sentiment and technology upgrades. This constant price fluctuation frequently creates pricing bias and provides arbitrageurs with

iter() is used to obtain the iterator object, and next() is used to obtain the next element; 1. Use iterator() to convert iterable objects such as lists into iterators; 2. Call next() to obtain elements one by one, and trigger StopIteration exception when the elements are exhausted; 3. Use next(iterator, default) to avoid exceptions; 4. Custom iterators need to implement the __iter__() and __next__() methods to control iteration logic; using default values is a common way to safe traversal, and the entire mechanism is concise and practical.

Use psycopg2.pool.SimpleConnectionPool to effectively manage database connections and avoid the performance overhead caused by frequent connection creation and destruction. 1. When creating a connection pool, specify the minimum and maximum number of connections and database connection parameters to ensure that the connection pool is initialized successfully; 2. Get the connection through getconn(), and use putconn() to return the connection to the pool after executing the database operation. Constantly call conn.close() is prohibited; 3. SimpleConnectionPool is thread-safe and is suitable for multi-threaded environments; 4. It is recommended to implement a context manager in combination with context manager to ensure that the connection can be returned correctly when exceptions are noted;

shutil.rmtree() is a function in Python that recursively deletes the entire directory tree. It can delete specified folders and all contents. 1. Basic usage: Use shutil.rmtree(path) to delete the directory, and you need to handle FileNotFoundError, PermissionError and other exceptions. 2. Practical application: You can clear folders containing subdirectories and files in one click, such as temporary data or cached directories. 3. Notes: The deletion operation is not restored; FileNotFoundError is thrown when the path does not exist; it may fail due to permissions or file occupation. 4. Optional parameters: Errors can be ignored by ignore_errors=True

Install the corresponding database driver; 2. Use connect() to connect to the database; 3. Create a cursor object; 4. Use execute() or executemany() to execute SQL and use parameterized query to prevent injection; 5. Use fetchall(), etc. to obtain results; 6. Commit() is required after modification; 7. Finally, close the connection or use a context manager to automatically handle it; the complete process ensures that SQL operations are safe and efficient.

threading.Timer executes functions asynchronously after a specified delay without blocking the main thread, and is suitable for handling lightweight delays or periodic tasks. ①Basic usage: Create Timer object and call start() method to delay execution of the specified function; ② Cancel task: Calling cancel() method before the task is executed can prevent execution; ③ Repeating execution: Enable periodic operation by encapsulating the RepeatingTimer class; ④ Note: Each Timer starts a new thread, and resources should be managed reasonably. If necessary, call cancel() to avoid memory waste. When the main program exits, you need to pay attention to the influence of non-daemon threads. It is suitable for delayed operations, timeout processing, and simple polling. It is simple but very practical.
