数据帧应用自定义函数

2024-09-27 17:58:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个巨大的数据帧,我想使用几个列来应用一个自定义函数,并将结果放入一个新的列中。但我遇到了一个问题。 下面是我计算两行之间距离的函数。在

def calcDist(p, q):
    diff = p - q
    square_diff = diff ** 2
    sum_square_diff = square_diff.sum()
    return sum_square_diff ** 0.5

函数中的一个参数是常量(0和1的序列),函数的第二个参数是数据帧中选定列中的数据(类似于0和1的序列)。 我试过以下代码。在

^{pr2}$

但我在“dist”栏里看到了NaN。 我已经试过让循环来解决这个问题。但它能减缓速度。在

house_chosen['dist'] = 0
for i in range(len(house_chosen)):
    cols_chosen = house_chosen.loc[:, addition_list]
    series_chosen = cols_chosen.iloc[i, :]
    house_chosen.iloc[i, 42] = calcDist(new_house_addition, series_chosen)

那么有没有办法用apply函数来解决这个问题呢? 泰铢


Tags: 数据函数参数distdiff序列houseseries

热门问题