Python函数获取每行的log2转换?

时间:2016-11-28 22:45:08

标签: python function pandas

我有一个数据帧,df如下所述。它有1个对象列(Genes)和7个Float列(Grow1,Grow2,Grow3,NoGrow1,NoGrow1,Nogrow3和Mean)。

柱值是Grow和Nogrow条件下一式三份不同基因的FPKM(基因表达值)。

我想从df创建一个新的数据框df1。在新数据帧中,每个值必须将log2标准化为Mean。平均列是行中所有值的平均值。

在excel中:

我这样做:LOG((C3 + 0.1)/(I + 0.1),2)获取Grow1 / RMRP的新值并拖动整个列和行以创建整个数据帧的规范化值。

键:

C3 = 6.059720 I = 7.652560。我在这两个值中加0.1,以处理列中的“0”值。

在熊猫:

我创建了lambda函数。如下图所示,func2。但是当我申请它时,我无法让它发挥作用。我尝试了很多方法,但这令人沮丧。 please refer the link image for my dataframe, df and functions

或者有没有正常的函数可以进行log2转换?

1 个答案:

答案 0 :(得分:0)

尝试:

df1 = df.add(.1)
df1 = np.log2(df1.drop('Mean', 1).div(df1.Mean, 0))