在pandas中减去两列小数
我有一个数据表,里面有两列小数,我想把其中一列减去另一列。但是,当我尝试这样做的时候:
df['diff'] = df['a'] - ['b']
我得到了
TypeError: unsupported operand type(s) for -: 'str' and 'str'
我这样导入csv文件:
pd.read_csv(file, sep='\t',
parse_dates = ['datetime'],
dtype={'a': decimal.Decimal, 'b': decimal.Decimal})
数据示例:
datetime a b
2014-10-15T00:00:01.752Z 8614.0 8616.0
2014-10-15T00:00:02.049Z 8613.0 8616.0
2014-10-15T00:00:02.049Z 8613.0 8616.0
2014-10-15T00:00:02.159Z 8613.0 8616.0
2014-10-15T00:00:02.159Z 8613.0 8616.0
2014-10-15T00:00:02.299Z 8614.0 8616.0
2014-10-15T00:00:02.299Z 8614.0 8616.0
2014-10-15T00:00:02.440Z 8614.0 8616.0
2014-10-15T00:00:02.440Z 8614.0 8616.0
1 个回答
0
直接用 np.float64 替代 decimal.Decimal 就可以了。