pandas iat: vscode против jupiterlab - PullRequest
       0

pandas iat: vscode против jupiterlab

0 голосов
/ 01 апреля 2020

Я использовал некоторый код, который работает с vscode:

df.iat[row_marker,column_marker] = thisText

Сначала df не определен, row_marker, column_marker равно нулю; Это создает новую строку и столбец правильно!

Я попробовал тот же код в jupiterlab, но получил IndexError: я предполагаю, что это потому, что номер столбца не известен ....

Почему это работает в vscode, а не в JupiterLab? Каков метод добавления новых значений вручную, когда мы не знаем размер фрейма данных?


Новый комментарий: фрейм данных существует, но пустой

Ответы [ 2 ]

0 голосов
/ 01 апреля 2020

Вы можете использовать этот шаблон для построения кадра данных, который может расти в обоих измерениях:

import pandas as pd 
site_no = 0 
df = pd.DataFrame()
while site_no < 4:  # your website counter
    if site_no < 2:  # website with col0 and col1 data
        row = pd.DataFrame(
            {'col0:': 'Hello', 'col1': 'World'}, index=[site_no])
    else:  # website with col2 and col3 data
        row = pd.DataFrame(
            {'col2:': 'Say', 'col3': 'Goodbye'}, index=[site_no])
    df = df.append(row)
    site_no += 1

df
    col0:   col1    col2:   col3
0   Hello   World   NaN     NaN
1   Hello   World   NaN     NaN
2   NaN     NaN     Say     Goodbye
3   NaN     NaN     Say     Goodbye
0 голосов
/ 01 апреля 2020

Если у вас есть пустой фрейм данных, вы можете добавить строки с помощью метода добавления

import pandas as pd
df = pd.DataFrame()
thisText = 'Hello World'
df = df.append({'column': thisText}, ignore_index=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...