dataframe,如何将列B和列C和列D的平均值生成列E,其中列B、C有缺失值
时间: 2024-05-09 11:21:19 浏览: 17
可以使用pandas库中的fillna()方法来填充列B和列C的缺失值,然后再计算列B、C、D的平均值生成列E。
具体步骤如下:
1. 导入pandas库:
```python
import pandas as pd
```
2. 创建DataFrame,并填充缺失值:
```python
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
'B': [2, 3, None, 5, None],
'C': [3, None, 4, None, 6],
'D': [4, 5, 6, 7, 8]})
df.fillna(value=0, inplace=True) # 将缺失值填充为0
```
3. 计算列B、C、D的平均值生成列E:
```python
df['E'] = (df['B'] + df['C'] + df['D']) / 3
```
完整代码如下:
```python
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
'B': [2, 3, None, 5, None],
'C': [3, None, 4, None, 6],
'D': [4, 5, 6, 7, 8]})
df.fillna(value=0, inplace=True) # 将缺失值填充为0
df['E'] = (df['B'] + df['C'] + df['D']) / 3
print(df)
```
输出结果:
```
A B C D E
0 1 2.0 3.0 4 3.000000
1 2 3.0 0.0 5 2.666667
2 3 0.0 4.0 6 3.333333
3 4 5.0 0.0 7 4.000000
4 5 0.0 6.0 8 4.666667
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)