Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Pandas - 清理空单元格


空单元格

空单元格可能会在您分析数据时导致错误的结果。


移除行

处理空单元格的一种方法是移除包含空单元格的行。

这通常是可以接受的,因为数据集可能非常庞大,移除几行不会对结果产生很大影响。

示例

返回一个没有空单元格的新 DataFrame

import pandas as pd

df = pd.read_csv('data.csv')

new_df = df.dropna()

print(new_df.to_string())
自己尝试 »

注意:默认情况下,dropna() 方法返回一个新的 DataFrame,并且不会更改原始 DataFrame。

如果要更改原始 DataFrame,请使用 inplace = True 参数

示例

移除所有包含 NULL 值的行

import pandas as pd

df = pd.read_csv('data.csv')

df.dropna(inplace = True)

print(df.to_string())
自己尝试 »

注意:现在,dropna(inplace = True) 不会返回新的 DataFrame,而是会从原始 DataFrame 中移除所有包含 NULL 值的行。


替换空值

处理空单元格的另一种方法是插入一个的值。

这样,您就不必仅仅因为一些空单元格而删除整行。

fillna() 方法允许我们用一个值替换空单元格

示例

用数字 130 替换 NULL 值

import pandas as pd

df = pd.read_csv('data.csv')

df.fillna(130, inplace = True)
自己尝试 »

仅替换指定列中的值

上面的示例替换了整个 DataFrame 中的所有空单元格。

要仅替换一列中的空值,请为 DataFrame 指定列名

示例

用数字 130 替换 "Calories" 列中的 NULL 值

import pandas as pd

df = pd.read_csv('data.csv')

df["Calories"].fillna(130, inplace = True)
自己尝试 »

w3schools CERTIFIED . 2022

获取认证!

完成 Pandas 模块,做练习,参加考试,您将获得 w3schools 认证!

10 美元报名

使用平均值、中位数或众数替换

替换空单元格的一种常用方法是计算列的平均值、中位数或众数。

Pandas 使用 mean() median()mode() 方法来计算指定列的相应值

示例

计算平均值,并用它替换任何空值

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].mean()

df["Calories"].fillna(x, inplace = True)
自己尝试 »

平均值 = 平均值(所有值的总和除以值的个数)。

示例

计算中位数,并用它替换任何空值

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].median()

df["Calories"].fillna(x, inplace = True)
自己尝试 »

中位数 = 将所有值按升序排序后,位于中间的值。

示例

计算众数,并用它替换任何空值

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].mode()[0]

df["Calories"].fillna(x, inplace = True)
自己尝试 »

众数 = 出现频率最高的值。



×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.