对于分类变量定义的一般规则是哑变量个数,哑变量的定义

  对于分类变量定义的一般规则是哑变量个数,哑变量的定义

  Python分析建模、日常问题排序(4)

  确定时间后,离发工资还有四周。

  2018.08.13~2018.08.19

  用numpy的argmax和arange方法转换虚拟变量

  a=numpy.array([[1,5,5,2],

  [9, 6, 2, 8],

  [3, 7, 9, 1]])

  Numpy.argmax(a,axis=0) #输出每个向量的最大索引

  Numpy.argmax(a,axis=1) #输出最大索引

  Numpy.equal (result _ max,test _ max) #一一对应的元素,如果相等,返回true如果不相等,则返回false。

  Numpy的方法真的很好用,而且运算速度很快。pd虽然也能写方法,但是没有numpy的快。

  tem=(numpy . arange(3)==NP . array([[2],[1],[0],[3]])。astype(int)

  将数值变量转换为哑变量,归类为numpy.arange(2),即[0,1]。

  如果数据为0,则返回true,如果数据为1,则返回false。

  Np.astype(int)可以将所有真值转换为1,将所有假值转换为0。

  这样,数据可以转换成0,1个虚拟变量。

  np.argmax(tem,轴=1)

  将虚拟变量转换为数值。

  type(df.ix[:1:2])或type(df.iloc[:1:2])的数据类型是dataframe。

  Type(df[b])是系列。

  df.ix的数据形式[:1:2]。值是多个数组[[2],[4],[1]]

  df[b]的数据形式。值是一个数组[2,4,1]

  将一列数据帧转换为虚拟变量

  如果有三个类,只需要转换成两列哑变量;如果有n个类,只需要转换成n-1列哑变量。

  #方法1:

  (np.arange(2)==pd。DataFrame([0,1,1,0,1])。价值观)。astype(int)

  #方法2:

  从keras.utils.np_utils导入到_ categorical

  to _ categorial(PD。DataFrame([0,1,1,0,1])。值,数量类=2)

对于分类变量定义的一般规则是哑变量个数,哑变量的定义