在使用PCA和NFC中有三个函数fit,fit_transform,transform区分不清各自的功能。通过测试,勉强了解各自的不同,在这里做一些笔记。
1.fit_transform是fit和transform的混合,相当于先调用fit再调用transform。
2.transform函数必须在fit函数之后调用否则会报错
3.fit_transform返回的是降维之后的结果,而且是对列压缩的
4.fit函数返回的是算法类,但是其成员变量components_是有数据的,而且似乎也是执行算法之后的结果,不过是对行压缩的。将数据转置后代入fit函数,和使用fit_transform得到的结果是不一样的,但是很接近。说明fit也是做了一定的特征提取的,只不过是对行操作的。
至于详细的区别目前没找到有人说明。只是建议使用fit_transform,若要使用fit,注意这个函数是对行压缩的
时间: 2024-10-26 11:14:34