分类变量哑变量,r语言分类变量哑变量

2023-08-27 8380阅读 0评论

分类变量哑变量,r语言分类变量哑变量 第1张

Python分析建模,日常问题整理(四)

确认过时间,离发工资还有四周。

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) 能将所有的true转化为1,所有的False转化为0

这样就可以将数据转化为0,1哑变量了。

np.argmax(tem,axis = 1)

将哑变量转化为数值。

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

type(df[\’b\’]) 的数据类型是Series

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

df[\’b\’].values 的数据形式是一个数组[2,4,1]

将dataframe的某列转化为哑变量

如果一共有三个类,那么只需转化为两列哑变量,如果n各类,只需转化为n-1列哑变量。

# 方法一:

(np.arange(2)==pd.DataFrame([0,1,1,0,1]).values).astype(int)

# 方法二:

from keras.utils.np_utils import to_categorical

to_categorical(pd.DataFrame([0,1,1,0,1]).values, num_classes = 2)

《分类变量哑变量,r语言分类变量哑变量》来自互联网同行内容,若有侵权,请联系我们删除!


免责声明
1、本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明。
2、本网站转载文章仅为传播更多信息之目的,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所
提供信息的准确性及可靠性,但不保证信息的正确性和完整性,且不对因信息的不正确或遗漏导致的任何
损失或损害承担责任。
3、任何透过本网站网页而链接及得到的资讯、产品及服务,本网站概不负责,亦不负任何法律责任。
4、本网站所刊发、转载的文章,其版权均归原作者所有,如其他媒体、网站或个人从本网下载使用,请在
转载有关文章时务必尊重该文章的著作权,保留本网注明的“稿件来源”,并白负版权等法律责任。

手机扫描二维码访问

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,8380人围观)

还没有评论,来说两句吧...

目录[+]