我有一个数据帧,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转换?
答案 0 :(得分:0)
尝试:
df1 = df.add(.1)
df1 = np.log2(df1.drop('Mean', 1).div(df1.Mean, 0))