代码之家  ›  专栏  ›  技术社区  ›  Falco Alexander

Pandas列名缺失,具体取决于地址

  •  0
  • Falco Alexander  · 技术社区  · 3 年前
    df.speed # so nice cause of autocomplete...
    df['speed']
    df.loc[:,'speed']
    

    正在返回我的数据,如省略所选列名

    Time
    2022-07-27 11:33:16.279157    45.000000
    2022-07-27 11:33:16.628157    44.928571
    2022-07-27 11:33:17.093157    44.857143
    2022-07-27 11:33:17.449157    44.785714
    

    为什么不见了??

    我想要它像

    df.filter(regex="speed")
    

    返回

                                speed
    Time    
    2022-07-27 11:33:16.279157  45.000000
    2022-07-27 11:33:16.628157  44.928571
    2022-07-27 11:33:17.093157  44.857143
    2022-07-27 11:33:17.449157  44.785714
    2022-07-27 11:33:17.885157  44.714286
    

    这意味着只有这样才能很容易地绘制出正确命名的值轴

    df.filter(regex="speed").plot()
    

    enter image description here

    鉴于

    df.speed.plot(label="speed")
    

    只能通过使用 plt.legend()

    有方便的方法吗?

    2 回复  |  直到 3 年前
        1
  •  1
  •   BeRT2me    3 年前
    • df['speed'] df.speed 返回一个系列。
    • df[['speed']] 返回一个DataFrame,这正是您所期望的。
        2
  •  1
  •   Himanshu Poddar    3 年前

    为绘图调用中的每个参数添加标签,对应于它正在绘图的系列,即label=“Speed”

    然后只需将Pyplot.legend()添加到脚本底部,图例就会显示这些标签。

    df.speed.plot(label="speed")
    plt.legend()
    

    这应该有效,IMO

    df.speed.plot(label="speed").legend()