AttributeError: module 'statsmodels.stats.api' has no attribute 'shapiro'
时间: 2023-06-22 13:19:10 浏览: 325
AttributeError: module 'tensorflow.compat.v1' has no attribute '
抱歉,我之前的回答有误,正确的是使用 `scipy` 库中的 `shapiro` 函数进行 Shapiro-Wilk 正态性检验。以下是示例 Python 代码:
```python
from scipy import stats
import matplotlib.pyplot as plt
# 绘制 QQ 图
stats.probplot(ds['salary'], plot=plt)
# 进行 Shapiro-Wilk 正态性检验
stat, p = stats.shapiro(ds['salary'])
print("Shapiro-Wilk test statistic: {:.4f}, p-value: {:.4f}".format(stat, p))
```
其中,`stats.probplot` 函数用于绘制 QQ 图,`stats.shapiro` 函数用于进行 Shapiro-Wilk 正态性检验,并返回检验统计量和 p 值。
如果你想计算85%分位数,可以使用 `numpy` 库中的 `percentile` 函数,以下是示例代码:
```python
import numpy as np
# 计算薪资的85%分位数
pct = np.percentile(ds['salary'], 85)
print("85th percentile of salary is: {:.2f}".format(pct))
```
其中,`np.percentile` 函数用于计算指定百分位的分位数。
阅读全文