我正在尝试构建一个knn图。 但是当我运行下面提到的这段代码时,它会给我抛出一个错误"属性错误:"数据帧"对象没有属性"数据"
%matplotlib inline
import matplotlib
matplotlib.use('GTKAgg')
import numpy as np
import pandas as pd
from pandas import Series, DataFrame
import seaborn as sns
import matplotlib.pyplot as plt
from matplotlib.colors import ListedColormap
from sklearn import neighbors, datasets
# importing data
dis = pd.read_csv("disease.csv")
# take the first two features
X = dis.data[:, :2]
y = dis.target
print(X)
CSV 文件如下所示:这是 csv 文件
代码中使用 dis.data[:, :2]
.
您正在尝试访问名为 data
的数据帧dis
的属性。但是熊猫数据帧没有称为data
的属性。
在代码中,您尝试访问数据帧的前两列。您可以通过在获取数据帧values
后对数据帧进行切片来执行此操作。
在代码中,您可以执行以下操作。
dis.values[:, :2]
您不能像以前那样使用dis.data
。CSV 文件标头中应有一个名为 data
的属性。但是您的 CSV 文件标头包含 A,B,C..
.
因此,您可以使用 A 列的dis.A
或 B 列的dis.B
来访问这些特定列。由于没有列是您的CSV命名为data
,因此您将获得AttributeError
。
如果要一次选择多个列,只需使用
X = dis[dis.columns[0:2]]
同样,您可以将所有目标值获取为,
y = dis.Species