【问题标题】:Creating a line plot after every 48 rows in Dataframe在 Dataframe 中每 48 行创建一个线图
【发布时间】:2019-06-24 14:33:08
【问题描述】:

因此,我得到了数千行数据,我使用 pandas 将这些数据插入到数据框中。我想创建仅包含 48 行数据的图,并且在每 48 行之后创建一个包含接下来 48 行的新图,依此类推。我对如何做到这一点感到困惑。我还想知道如何在我的折线图中仅绘制数据框中的某些行。附言这是我的第一个问题,因此对于任何格式错误,我深表歉意。

我隔离了我的代码“HP”的某一列,并通过执行 hp = df.HP 将其分配给变量 hp。我还通过 hp.plot(x = '#', y = None, kind = 'line') 为整个数据绘制了一个基本图。我查看了我的问题并尝试使用

hpnew = hp[seq(1, nrow(hp), 48), ]

hpnew.plot(x = '#', y = None, kind = 'line')

hp new 将在第 48 行出现一次。它没有用,我得到了错误消息

NameError: name 'seq' is not defined

最初我告诉使用

for i to range(hp):
  hp(i)

但是我遇到了一个语法错误,很困惑从那里该怎么做。

【问题讨论】:

    标签: pandas plot


    【解决方案1】:

    您可以使用answer by Roman Pekar here 将您的数据框分成 48 个组:

    df.groupby(df.index / 48)
    

    然后,如果您有一些绘图功能,您可以将其应用于分组数据:

    def plot_function(df):
        df.plot( ... )
    df.groupby(df.index / 48)['hp'].apply(plot_function)
    

    【讨论】:

      猜你喜欢
      • 2020-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-19
      • 2020-09-29
      • 2017-12-13
      • 2018-04-01
      • 1970-01-01
      相关资源
      最近更新 更多