pandas如何去除空值
时间: 2023-11-29 15:46:58 浏览: 124
在pandas中,可以使用`dropna()`函数来去除空值。该函数可以删除DataFrame中包含空值的行或列。具体使用方法如下:
1. 删除包含任何空值的行或列:
```python
df.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
```
其中,`axis`参数用于指定删除行或列,`how`参数用于指定删除方式,`thresh`参数用于指定保留的非空值数量阈值,`subset`参数用于指定删除时考虑的列,`inplace`参数用于指定是否在原DataFrame上进行修改。
2. 删除指定列中包含空值的行:
```python
df.dropna(subset=['column_name'])
```
其中,`subset`参数用于指定要考虑的列名。
举个例子,假设我们有以下的DataFrame:
```python
import pandas as pd
import numpy as np
data = {'name': ['Alice', 'Bob', np.nan, 'Charlie'],
'age': [25, 30, 20, np.nan],
'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)
print(df)
```
输出:
```
name age gender
0 Alice 25.0 F
1 Bob 30.0 M
2 NaN 20.0 M
3 Charlie NaN M
```
如果我们想删除包含任何空值的行,可以使用以下代码:
```python
df.dropna(axis=0, how='any', inplace=True)
print(df)
```
输出:
```
name age gender
0 Alice 25.0 F
1 Bob 30.0 M
```
如果我们想删除`name`列中包含空值的行,可以使用以下代码:
```python
df.dropna(subset=['name'], inplace=True)
print(df)
```
输出:
```
name age gender
0 Alice 25.0 F
1 Bob 30.0 M
3 Charlie NaN M
```
阅读全文