在pandas中减去两列小数

0 投票
1 回答
854 浏览
提问于 2025-04-28 02:06

我有一个数据表,里面有两列小数,我想把其中一列减去另一列。但是,当我尝试这样做的时候:

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 就可以了。

撰写回答