函数内的Python .loc与函数外的VS

时间:2019-11-11 21:23:51

标签: python pandas dataframe loc

我有一个非常具体的问题,与直接应用于daraframe(例如df.loc [])(而不是在定义的方法中然后应用)相对时,“。loc”函数在后端如何工作使用“ df.apply()”。

这是我正在使用的MultiIndex数据帧结构。

[我的DataFrame 1]

#Sample Function
def sample(df):
    for i in df:
        val = df.loc['deep_impressions'] > 0
        return val.sum()
df.apply(sample, axis=1)

上面的代码使用 .loc 而没有行/列指示,只需简单地传递外部列标签,并在将其应用于DataFrame时,返回正确的输出,即te下2列的总和“ deep_impressions”外部列索引。

但是,当不使用已定义的方法来应用相同的逻辑时,我必须明确声明所有行和仅“ deep_impressions”列将被求和。

df.loc[:,'deep_impressions'] > 0 
df.sum(axis=1)
df

为什么在定义的方法中使用python时,我不要求我明确声明(.loc [:,“ deep_impressions])?它如何在后端工作?

0 个答案:

没有答案