zoukankan      html  css  js  c++  java
  • pandas报错处理:TypeError: Empty 'DataFrame': no numeric data to plot

    Tushare返回的是pandas的DataFrame格式,但是执行以下代码时报错:TypeError: Empty 'DataFrame': no numeric data to plot

    import tushare as ts
    
    df_all = ts.realtime_boxoffice()
    df_box_office = df['BoxOffice']
    df_box_office.index = df['Irank']
    df_box_office.plot(kind='bar')

    反复输出df['BoxOffice']确认是有值的,想不通为什么会报“Empty”,百度也没什么结果。

    以为TuSahre和pandas结合时有bug准备放弃的时候看到了报错中有“numeric”,莫非是说df['BoxOffice']是字符串类型不是数值类型所以导致报错

    在pandas官方文档看到了“astype()”的用法,代码改成如下成功绘图(另外使用“pd.to_numeric()”也可以,不过从tushare又得绕回pandas一趟感觉代码看起来没那么顺畅):

    import tushare as ts
    
    df_all = ts.realtime_boxoffice()
    df_box_office = df['BoxOffice'].astype(float)
    df_box_office.index = df['Irank']
    df_box_office.plot(kind='bar')

  • 相关阅读:
    linux 常用函数
    现在什么都不是浮云
    laosao
    2012年
    工作任务
    代码整理
    如何做一个男人
    很重要的2点
    录像预录的设计及实现
    弄了一个小网站
  • 原文地址:https://www.cnblogs.com/lsdb/p/9277850.html
Copyright © 2011-2022 走看看