IsolationForest KeyError:[[Index([“],dtype ='object')]都不在[列]中”

时间:2020-07-21 07:19:24

标签: python

我正在尝试使用IsolationForest实现我的第一个异常检测,但不幸的是,它没有成功。

我有一个.csv文件,具有不同的网络参数,例如ip.ttl,frame.len等。

#Einlesen
quelle = pd.read_csv('./x.csv')
pdf=quelle.to_numpy()
print(quelle.columns)

Index(['; ip.proto; ttl; frame.len; ip.src; ip.dst; ip.len; ip.flags; eth.src; eth.dst; eth.type; vlan.id; udp.port'],dtype ='object')

print(quelle.shape)

(1658,1)

但是当我尝试使用ip.ttl或frame.len(其中一列)之类的列创建IsolationForest模型时,出现错误

model=IsolationForest(n_estimators=50, max_samples='auto',contamination=float(0.1),max_features=1.0)
model.fit(quelle[['frame.len']])

KeyError:“ [Index(['frame.len'],dtype ='object')]都不在[列]中”

我的错误在哪里?

预先感谢

1 个答案:

答案 0 :(得分:0)

数据框具有许多数据点,但只有一列。

print(quelle.shape)
(1658, 1)

将文件加载到数据框中后,它无法自动检测到文件的正确分隔符,并且没有读取每一列,而是将所有列打包为单个列。

要解决此问题,请在读取文件时指定分隔符。

pd.read_csv('./x.csv', sep=';')