Создание линейного графика после каждых 48 строк в Dataframe - PullRequest
0 голосов
/ 24 июня 2019

Итак, мне даны тысячи строк данных, которые я вставил во фрейм данных с помощью панд. Я хотел бы создать графики, содержащие только 48 строк данных, а после каждых 48 строк создать новый график, содержащий следующие 48 строк и т. Д. Я не понимаю, как это сделать. Я также хотел бы знать, как построить график только определенных строк в моем фрейме данных на линейном графике. Постскриптум это мой первый вопрос, поэтому я прошу прощения за любые ошибки форматирования.

Я выделил определенный столбец моего кода «HP» и назначил переменную hp, выполнив команду hp = df.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)

Но я остался с синтаксической ошибкой и был растерян, что оттуда.

1 Ответ

0 голосов
/ 24 июня 2019

Вы можете использовать ответ Романа Пекара здесь , чтобы разбить ваш фрейм данных на группы по 48:

df.groupby(df.index / 48)

Тогда, если у вас есть какая-то функция построения графиков, вы можете применить ее к сгруппированнымданные:

def plot_function(df):
    df.plot( ... )
df.groupby(df.index / 48)['hp'].apply(plot_function)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...