大熊猫形成指数循环

时间:2017-11-28 11:48:24

标签: python pandas numpy

如何使用for中的pandas循环执行以下类型的过程(索引列的位置索引)

z1 = math.sqrt((df.loc [0,“A#1”] - a_mean [0])** 2 +(df.loc [0,“B#1”] - b_mean [0] )** 2)

z2 = math.sqrt((df.loc [“A#2”] - a_mean [0])** 2 +(df.loc [0,“B#2”] - b_mean [0])* * 2)

    input: 

a_mean = [ 1, 2, 3]
b_mean = [1, 2, 3 ]

     x#1     A #1     A #2   A #3    B#1    B#2   B#3

0     1       2       3       4       5     6      7
1     1       2       3       4       5     6      7

output: 
       (z list [1]   (z list [2)
 z1 0  answers         answers
 z2 1     ?               ?

1 个答案:

答案 0 :(得分:1)

这是你的意思吗?

z = []
for i in range(1,n):
    z_p = []
    for s in range(0,3):
        z_p.append(math.sqrt( (df.loc["A #"+str(i)] - a_mean[s])**2 + (df.loc[s,"B #"+str(i)] - a_mean[s]) **2))
    z.append(z_p)

另一种可能性是使用dataframe.apply,但如果要将大量函数应用于每列,则可能需要多次调用。