qq_59744861 2022-04-12 20:15 采纳率: 91.7%
浏览 57
已结题

为什么会出现报错,已附代码?

问题遇到的现象和发生背景
问题遇到的现象和发生背景
excel数据显示如下:

img


问题相关代码,请勿粘贴截图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['KaiTi']
mpl.rcParams['axes.unicode_minus']=False

index_value = pd.read_excel(r'C:\Users\kate\Desktop\基金\FOF.xlsx',sheet_name="Sheet1",header=0,index_col=0)
index_value = index_value.dropna()
(index_value/index_value.iloc[0]).plot(figsize=(9,6),grid=True)

运行结果及报错内容

File "C:\Users\kate\anaconda3\lib\site-packages\pandas\core\ops\array_ops.py", line 112, in _masked_arith_op
result[mask] = op(xrav[mask], yrav[mask])

TypeError: unsupported operand type(s) for /: 'str' and 'float'

我的解答思路和尝试过的方法

我想要达到的结果
能够解决报错问题

  • 写回答

4条回答 默认 最新

  • CSDN专家-HGJ 2022-04-12 20:56
    关注

    index_value/index_value.iloc[0]这里,一个为字符串类型,一个是浮点数类型,不能相除,检查一下两个数据,用astype(float)转换为浮点数类型。确保数据项下数据类型为浮点数,然后运算。示例:

    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    from pylab import mpl
    mpl.rcParams['font.sans-serif'] = ['KaiTi']
    mpl.rcParams['axes.unicode_minus']=False
    index_value = pd.read_excel('2.xlsx',sheet_name="Sheet1",header=0,usecols=range(5),index_col=0)
    index_value=index_value.astype(float)
    print(index_value/index_value.iloc[0])
    

    运行结果:

     CTA   neutral  aritrige     ZZ500
    date
    2013-01-01  1.00000  1.000000   1.00000  1.000000
    2013-01-04  1.00041  1.000437   0.99958  0.994594
    2013-01-07  1.00148  0.000000   1.00049  1.004093
    
    

    如有帮助,请点采纳。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月21日
  • 已采纳回答 4月13日
  • 创建了问题 4月12日

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作