-color:brown=n,orange=o,white=w,yellow=y
-number:none=n,one=o,two=t
-type:cobwebby=c,evanescent=e,flaring=f,large=l,none=n,pendant=p,sheathing=s,zone=z
-print-color:black=k,brown=n,buff=b,chocolate=h,green=r,orange=o,purple=u,white=w,yellow=y
:abundant=a,clustered=c,numerous=n,scattered=s,several=v,solitary=y
:grasses=g,leaves=l,meadows=m,paths=p,urban=u,waste=w,woods=d
首先使用pandas读取数据,这是一个强大的数据处理工具。通过显示数据形状可以看到共有8124行、24列。
In[5]:importpandasaspd
importnumpyasnp
In[6]:data=pd.read_excel('',header=0)
In[7]:
Out[7]:(8124,24)
使用如下命令观察前5行数据。
In[8]:(5)
Out[8]:
样本编号标记属性1 属性2 属性3 属性4 属性5 属性6 属性7 属性8...
属性13 属性14 属性15 属性16 属性17 属性18\
01.0pxsntpfcn...swwpwo
12.0exsytafcb...swwpwo
23.0ebswtlfcb...swwpwo
34.0pxywtpfcn...swwpwo
45.0exsgfnfwb...swwpwo
属性19 属性20 属性21 属性22
0pksu
1pnng
2pnnm
3pksu
4enag
[5rowsx24columns]
进行数据拆分,获得输入数据X和对应的类别标记Y,这个过程是为了准备训练数据。用以下代码获取类别标记。
In[9]:label=data['标记']
#读取标记列
In[10]:label=(label)
#转化成数组,这是Python最常使用的数据格式
In[11]:
Out[11]:(8124,)
#获得标记的个数。实际标记是8123个,需要剔除最后一个' '标记
In[12]:label=label[0:-1]
#获得8123个标记
因为用来表示类别的“e”和“p”是英文字母,所以需要转化成1和0以便计算机使用,其中1表示可食用,0表示有毒。使用以下代码完成转化,这是一个循环程序。