Excel相关(要求全部使用python代码完成): 1、数据处理: 删除异常值(多个数值为0,多个数值远低于平均值) 修改异常值(异常充电数-99修改为分区平均数) 2、对各分区up主粉丝数进行描述性分析(平均数,中位数,众数等),一共22个分区
时间: 2024-01-10 11:02:33 浏览: 98
python学习_Excel、OLS回归、作图_
5星 · 资源好评率100%
好的,针对您的问题,我可以提供以下代码实现:
1、数据处理:
```python
import pandas as pd
# 读取Excel文件
df = pd.read_excel('your_file_path.xlsx')
# 删除多个数值为0的异常值
df = df.loc[(df != 0).all(axis=1)]
# 删除多个数值远低于平均值的异常值
df = df.loc[(df > df.mean() - 3*df.std()) & (df < df.mean() + 3*df.std())]
# 将异常充电数-99修改为分区平均数
for i in range(1, 23):
mean_val = df.loc[df['分区编号']==i, '充电数'].mean()
df.loc[(df['分区编号']==i) & (df['充电数']==-99), '充电数'] = mean_val
# 保存处理后的数据
df.to_excel('processed_data.xlsx', index=False)
```
2、对各分区up主粉丝数进行描述性分析:
```python
import pandas as pd
from scipy import stats
# 读取Excel文件
df = pd.read_excel('processed_data.xlsx')
# 对各分区up主粉丝数进行描述性分析
for i in range(1, 23):
fans = df.loc[df['分区编号']==i, '粉丝数']
mean_val = fans.mean()
median_val = fans.median()
mode_val = stats.mode(fans)[0][0]
print(f'分区{i}的平均数为{mean_val},中位数为{median_val},众数为{mode_val}')
```
以上代码中,需要将 `your_file_path.xlsx` 替换为您实际的文件路径。
阅读全文