Я пытаюсь применить новые столбцы к фрейму данных, если он не пуст. Скажем, no_result - это фрейм данных pandas. Если он пуст, он вернет пустой фрейм данных. Если он не пуст и состоит из 1 столбца, я хочу добавить два новых дополнительных столбца с «output1» и «output2». Таким образом, фрейм данных будет либо пустым, либо примерно так:

   0        1        2
0  A  output1  output2
1  B  output1  output2

Я пробовал что-то вроде этого ниже:

if no_result = []: 
        no_result = []
        return no_result
else
        no_result[1] = 'output1'
        no_result[2] = 'output2'
        return no_result

Он показывает синтаксическую ошибку. Как мне вернуть фрейм данных? Заранее спасибо.

0
bison72 25 Окт 2019 в 11:24

1 ответ

Лучший ответ
import pandas as pd

df = pd.DataFrame({'0':['A','B']})
df2 = pd.DataFrame()

def check_if_empty(df):
    if df.empty:
        return pd.DataFrame()
    else:
        df['output1'] = 'output1'
        df['output2'] = 'output2'
        return df

print(check_if_empty(df))

print(check_if_empty(df2))

Я надеюсь, что это поможет!

1
mgruber 25 Окт 2019 в 08:29