python panda 库 累积分布_如何对刚刚在Python Pandas数据框中累积的数据进行主成分分析?...

我有一系列功能来处理.csv文件(由DNA序列集组成)中的一些输入数据。 我打开输入文件,将DNA序列提取到字典中(在此示例中称为folder_contents),然后将每个DNA序列由所有功能处理。 结果通过以下代码存储在Pandas数据框中:

def data_assembler(folder_contents):

df= DataFrame(columns= ['Column1','Column2','Column3])

for candidate in folder_contents.keys()[:50]:

score1= calculate_complex_mfe(folder_contents[candidate][3])

score2= calculate_complex_ensemble_defect(folder_contents[candidate][3])

score3= calculate_GC_content(folder_contents[candidate][1])

df.loc[candidate]= [score1, score2, score3]

df= df.sort(['score3'], ascending=False)

df.to_csv(path.join(output,"DNAScoring.csv"))

组装完此输出数据后,我想运行PCA,以便计算每个评分参数的特征值,并将参数对它们的数据的影响进行相互比较。 我尝试通过执行以下操作来做到这一点:

from matplotlib import mlab

###data assembler function

pca= mlab.PCA(df, standardize=True)

df= df.sort(['score3'], ascending=False)

df.to_csv(path.join(output,"DNAScoring.csv"))

尽管创建了PCA对象,但我似乎无法查看其内容,也无法使其在Pandas数据框中的新列中打印值。 我知道有几个软件包可以对数据帧执行PCA,因此我试图找到哪种方法最适合我的数据帧。

我通常使用scikit-learn附带的PCA实现进行PCA重投影,因此我对matplotlib的PCA不熟悉,但是我认为您的问题很简单:您将PCA重投影的数据保存在pca变量中,但是 您将原始的df DataFrame保存到csv ...

检查pca是否仍然是DataFrame并继续

pca.to_csv(path.join(output,"DNAScoring.csv"))

编辑:

在阅读这些文档时,我担心您会滥用该类:您需要一个数据矩阵作为输入,并且由于您在执行pca= mlab.PCA(df, standardize=True)时正在构造PCA对象,因此在pca变量中有一个PCA对象。 尝试阅读这些文档,以更好地了解您是否可以使用此PCA类做您想做的事情。

如果您不能做自己想做的事情,建议您访问http://scikit-learn.org上的scikit-learn(sklearn)库。

特别是,请参阅sklearn.decomposition.PCA的文档

我已经尝试实现您的想法,但是随后出现错误AttributeError: PCA instance has no attribute S。 所以我的pca对象必须以不同的方式投影

您是否检查过pca仍然是数据帧? 它可能是一个numpy的数据矩阵,也许...

我研究了实际上可以与PCA对象一起使用的不同属性,但仍然很难确定我需要获取哪些值。 我想要得到的是特征值,或者所有权重的总和乘以它们对应的数据点。 是否可以从matlab包中获取此类数据? 可以在14:50看到此类数字的详细说明:youtube.com/watch?v=_UVHneBUBW0&t=784s

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值