如何解决转置后,dtype='object'
所以我在尝试使用 Pandas 中的列进行基本算术时遇到了一些麻烦。转置后我的列的数据类型是“对象”。因此,我在尝试将一列添加到另一列时得到 KeyError
。
dg.columns = dg.columns.astype(str)
好像没反应过来,有人知道怎么解决吗?
我的完整代码:
dg = pd.read_csv("file.csv",encoding="latin-1",header = None)
dg = dg.T
dg.columns= dg.iloc[0]
dg = dg.reindex(dg.index.drop(0))
dg.index.name = 'Date'
dg = dg.fillna(0)
dg.drop(dg.columns.difference(['Category','revenue','Result']),1,inplace=True)
dg.columns = dg.columns.astype(str)
print (dg.columns)
dg['revenue','Result'] = pd.to_numeric(dg['revenue','Result'],errors='coerce')
dg['cost'] = dg['revenue']* - dg['Result']
dg = dg.groupby('Category','Result','cost').agg(sum).reset_index()
print (dg[:5])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。