python计算Dataframe,去除前三列,查找每行中大于远远每行平均的异常值,并输出异常值所在的行
时间: 2024-03-09 13:50:55 浏览: 70
python DataFrame获取行数、列数、索引及第几行第几列的值方法
可以使用和上面类似的方法,只需要在找到异常值后,将对应行的行号输出即可。
以下是实现代码:
```python
import pandas as pd
# 读取数据,假设数据文件名为data.csv
df = pd.read_csv('data.csv')
# 去除前三列
df = df.iloc[:, 3:]
# 计算每行的平均值
mean = df.mean(axis=1)
# 查找异常值
condition = df > mean.values.reshape(-1, 1) * 1.5
abnormal_rows = condition.any(axis=1).nonzero()[0]
# 输出异常值所在的行
print(f"所有的异常值所在的行为:{abnormal_rows}")
```
在处理完数据后,会输出所有的异常值所在的行,例如:
```
所有的异常值所在的行为:[1 3 5 6 7 8 9 10]
```
上述结果说明所有的异常值所在的行为 1, 3, 5, 6, 7, 8, 9, 10。注意,行号从 0 开始。
阅读全文