【发布时间】:2015-12-08 15:17:13
【问题描述】:
我正在尝试通过划分两列来为每列创建一个新列。 df 是一个熊猫数据框...
columns = list(df.columns.values)
for column_1 in columns:
for column_2 in columns:
new_column = '-'.join([column_1,column_2])
df[new_column] = df[column_1] / df[column_2]
得到一个错误:NotImplementedError: operator '/' not implemented for bool dtypes
有什么想法不胜感激?
【问题讨论】:
-
其中一列是布尔值。检查 df.dytpes,并省略非数字列。
-
谢谢...我认为 bool 会评估为 0 或 1。显然它不会。
-
我会尝试将两列都转换为浮点数,并从尝试的转换中捕获任何错误。如果 Python 可以转换为浮动,那么继续进行分区可能是公平的游戏。这也可以防止任何整数除法异常。