Пропуски строк в датафреймах Python для панд - PullRequest
0 голосов
/ 05 октября 2018

Итак, у меня есть этот цикл, который добавляет строку в фрейм данных.Это отлично работает.Однако, когда я пытаюсь добавить число во втором столбце, он пропускает строки (как вы можете видеть в выводе) .`

Я знаю, что это как-то связано с тем, как я зацикливаюсь, но я не могу понять, что.Также мне нужно увеличивать на 2 каждый раз, потому что субредакты появляются на странице дважды, и мне нужно только захватить 1.

1 Ответ

0 голосов
/ 05 октября 2018

pd.DataFrame.append добавляет строку каждый раз.Вы можете включить 2 ключа в свой словарь, чтобы добавить одну строку для каждой итерации:

df = df.append({'Subreddit': e, 'Appearances': 1}, ignore_index=True)

Но вам никогда не придется использовать pd.DataFrame.append в цикле таким образом.Это будет неэффективно, так как pd.DataFrame.append стоит дороже по сравнению с list.append из-за дополнительных операций копирования.

Вместо этого вы можете создать список списков и вызвать pd.DataFrame.append один раз.Вот некоторый псевдокод:

L = []
for _ in some_iterable:
    L.append([e, 1])

to_append = pd.DataFrame(L, columns=['Subreddit', 'Appearances'])
df = df.append(to_append, ignore_index=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...