小编Wou*_*ter的帖子

如何加速pandas申请字符串匹配

我有大量文件,我必须根据字符串列对其进行计算。相关列如下所示。

df = pd.DataFrame({'A': ['A', 'B', 'A', 'B'], 'B': ['B', 'C', 'D', 'A'], 'C': ['A', 'B', 'D', 'D'], 'D': ['A', 'C', 'C', 'B'],})

    A   B   C   D
0   A   B   A   A
1   B   C   B   C
2   A   D   D   C
3   B   A   D   B
Run Code Online (Sandbox Code Playgroud)

我必须创建包含每行中某些字符串出现次数的新列。我这样做:

for elem in ['A', 'B', 'C', 'D']:
    df['n_{}'.format(elem)] = df[['A', 'B', 'C', 'D']].apply(lambda x: (x == elem).sum(), axis=1)

   A  B  C  D  n_A  n_B  n_C  n_D
0  A  B  A  A    3 …
Run Code Online (Sandbox Code Playgroud)

python apply pandas

5
推荐指数
2
解决办法
145
查看次数

标签 统计

apply ×1

pandas ×1

python ×1