熊猫:如何将函数应用于不同的列

RDJ

假设这是我的功能:

def function(x):
    return x.str.lower()

这是我的DataFrame(df)

   A         B     C       D 
0  1.67430   BAR  0.34380  FOO 
1  2.16323   FOO -2.04643  BAR
2  0.19911   BAR -0.45805  FOO
3  0.91864   BAR -0.00718  BAR
4  1.33683   FOO  0.53429  FOO
5  0.97684   BAR -0.77363  BAR

我想将此功能仅应用于列BD(将其应用于完整的DataFrame并不是答案,因为这会在数字列中产生NaN值)。

这是我的基本想法: df.apply(function, axis=1)

但是我无法理解如何选择不同的列来应用该功能。我尝试了通过数字位置,名称等进行所有索引的方式。

我花了很多时间阅读此内容。这不是以下任何一项的直接重复:

如何将函数应用于Pandas数据框的两列

熊猫:如何使用套用功能至多栏

熊猫:将不同的功能应用于不同的列

Python Pandas:使用“ apply”将1个函数应用于多个列

埃德·楚姆

只要忽略df中的列,就可以忽略axis参数,我们按列而不是按行进行操作,因为此处的行数比列数多,这将非常重要:

df[['B','D']].apply(function)

这将对每个列运行您的func

In [186]:
df[['B','D']].apply(function)

Out[186]:
     B    D
0  bar  foo
1  foo  bar
2  bar  foo
3  bar  bar
4  foo  foo
5  bar  bar

您还可以过滤df以仅获取字符串dtype列:

In [189]:
df.select_dtypes(include=['object']).apply(function)

Out[189]:
     B    D
0  bar  foo
1  foo  bar
2  bar  foo
3  bar  bar
4  foo  foo
5  bar  bar

时机

按列与按行:

In [194]:    
%timeit df.select_dtypes(include=['object']).apply(function, axis=1)
%timeit df.select_dtypes(include=['object']).apply(function)

100 loops, best of 3: 3.42 ms per loop
100 loops, best of 3: 2.37 ms per loop

但是,对于较大的dfs(逐行),第一种方法的伸缩性会好得多

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在熊猫中,如何将函数应用于返回两列的每一列

来自分类Dev

如何将Lambda函数正确应用于熊猫数据框列

来自分类Dev

如何将 NTILE 函数应用于 SQL 列

来自分类Dev

熊猫-将函数应用于具有来自不同列的多个参数的数据框

来自分类Dev

如何将函数应用于熊猫中每一行的对象属性

来自分类Dev

如何将自定义函数应用于熊猫数据框的2列?

来自分类Dev

如何将层次结构或多索引应用于熊猫列

来自分类Dev

如何将单个函数应用于对象列表中属性的不同组合?

来自分类Dev

R:如何将函数应用于向量并获得不同长度的向量?

来自分类Dev

如何将函数应用于两列以创建第三列

来自分类Dev

如何将函数应用于多个列以在R中创建多个新列?

来自分类Dev

如何将函数应用于多列以在 Pandas 中创建多列?

来自分类Dev

如何将不同的样式应用于datagrid列

来自分类Dev

如何将不同的样式应用于datagrid列

来自分类Dev

当元素彼此不同时,如何将“mutate”应用于列的每个元素?

来自分类Dev

如何更新/将验证应用于熊猫列

来自分类Dev

如何将多个函数应用于numpy数组?

来自分类Dev

如何将函数(BigramCollocationFinder)应用于Pandas DataFrame

来自分类Dev

如何将函数应用于每个“ foreach”结果?

来自分类Dev

如何将LinEst函数应用于行?

来自分类Dev

如何将函数调用应用于别名?

来自分类Dev

jQuery:如何将函数应用于哈希值?

来自分类Dev

如何将数学函数应用于节点值?

来自分类Dev

如何将函数应用于数组的索引?

来自分类Dev

如何将函数应用于所有字段(所有行的所有列)

来自分类Dev

如何将函数应用于pandas数据框中的列中的每个值?

来自分类Dev

如何将聚合函数应用于Pandas中数据透视表的所有列

来自分类Dev

如何将特定列应用于R中的sapply函数?

来自分类Dev

如何将lambda函数正确应用于数据框的列?

Related 相关文章

  1. 1

    在熊猫中,如何将函数应用于返回两列的每一列

  2. 2

    如何将Lambda函数正确应用于熊猫数据框列

  3. 3

    如何将 NTILE 函数应用于 SQL 列

  4. 4

    熊猫-将函数应用于具有来自不同列的多个参数的数据框

  5. 5

    如何将函数应用于熊猫中每一行的对象属性

  6. 6

    如何将自定义函数应用于熊猫数据框的2列?

  7. 7

    如何将层次结构或多索引应用于熊猫列

  8. 8

    如何将单个函数应用于对象列表中属性的不同组合?

  9. 9

    R:如何将函数应用于向量并获得不同长度的向量?

  10. 10

    如何将函数应用于两列以创建第三列

  11. 11

    如何将函数应用于多个列以在R中创建多个新列?

  12. 12

    如何将函数应用于多列以在 Pandas 中创建多列?

  13. 13

    如何将不同的样式应用于datagrid列

  14. 14

    如何将不同的样式应用于datagrid列

  15. 15

    当元素彼此不同时,如何将“mutate”应用于列的每个元素?

  16. 16

    如何更新/将验证应用于熊猫列

  17. 17

    如何将多个函数应用于numpy数组?

  18. 18

    如何将函数(BigramCollocationFinder)应用于Pandas DataFrame

  19. 19

    如何将函数应用于每个“ foreach”结果?

  20. 20

    如何将LinEst函数应用于行?

  21. 21

    如何将函数调用应用于别名?

  22. 22

    jQuery:如何将函数应用于哈希值?

  23. 23

    如何将数学函数应用于节点值?

  24. 24

    如何将函数应用于数组的索引?

  25. 25

    如何将函数应用于所有字段(所有行的所有列)

  26. 26

    如何将函数应用于pandas数据框中的列中的每个值?

  27. 27

    如何将聚合函数应用于Pandas中数据透视表的所有列

  28. 28

    如何将特定列应用于R中的sapply函数?

  29. 29

    如何将lambda函数正确应用于数据框的列?

热门标签

归档