Pandas 熊猫中的错误-ZeroDivision错误:浮点除以零

Pandas 熊猫中的错误-ZeroDivision错误:浮点除以零,pandas,dataframe,filtering,division,Pandas,Dataframe,Filtering,Division,昨天我在熊猫身上发现了一只虫子。 我也找到了一个解决办法,但我希望团队能够解决这个问题 我有一个有两列的数据框,我需要在列“a”和列“B”之间进行划分。 如果列“B”中有一个“零”,则唯一的方法是创建一个用“B!”过滤的临时数据帧“0”,然后继续创建列“C”的除法 没有办法直接生成它 df是带有列“A”和“B”的数据帧 以下工作循环工程 df_temporary = df.loc[df['B'] != 0, ['A','B']] df_temporary['C'] = df['A']/df['B

昨天我在熊猫身上发现了一只虫子。 我也找到了一个解决办法,但我希望团队能够解决这个问题

我有一个有两列的数据框,我需要在列“a”和列“B”之间进行划分。 如果列“B”中有一个“零”,则唯一的方法是创建一个用“B!”过滤的临时数据帧“0”,然后继续创建列“C”的除法 没有办法直接生成它

df是带有列“A”和“B”的数据帧

以下工作循环工程

df_temporary = df.loc[df['B'] != 0, ['A','B']]
df_temporary['C'] = df['A']/df['B']
下面的直接过程不起作用

df.loc[df['B']!= 0, ['C']] = df['A']/df['B']

最后一个生成的
zerodivision错误:浮点除以零

这不是错误,因为您没有过滤列
B
,所以存在除以
0

您需要筛选
B
列,如:

 df['C'] = df['A']/df.loc[df['B']!= 0, 'B']
如果需要同时过滤
A、B
使用:

 df['C'] = df.loc[df['A']!= 0, 'A']/df.loc[df['B']!= 0, 'B']

帮助我们了解它是如何成为一个bug的?这里已经列出了吗?