cashflow是一个dataframe,其中有三列分别为A、B、C,三列的数据类型均为float或空白。现要计算三列数据额之和。
#将空白项填充为0
cashflow[['A','B',‘C']].fillna(0,inplace=True)
#计算fcfe
fcfe=cashflow['A']+cashflow['B']+cashflow['C']
print('FCFE='+str(fcfe))
结果为:
请问我已经把数据中的空白项调整为0,为什么计算之后结果为NaN?
我要的显示效果是“FCFE=计算结果” 为什么图中的显示格式和我要的不一样?
如果计算结果的数字太长,如何在编辑器中显示完整数字而不是科学计数的结果?
谢谢!
第一个问题
如果把所有的nan 都替换为0
就这样
cashflow.fillna(0,inplace=True)
如果只是把A,B,C三列替换,就这样
cashflow.fillna(value={'A':0,'B':0,'C':0},inplace=True)
第二个问题,不明白, 是要生成一个新列吗? 还是要所有的合计数?
计算加法的时候不用fillna也行。如果你想求分列和,那就ser=df['a','b','c'].sum(), 求总和s=df['a','b','c'].sum().sum()