Объединение l oop и функции для разделения и переименования столбцов на основе подтекста - PullRequest
0 голосов
/ 26 мая 2020

У меня есть большой фрейм данных с примерно 500 столбцами, и во многих столбцах текст организован как «John-Doe». Я пытаюсь найти наиболее эффективный способ l oop через эти столбцы, и если присутствует текст, который соответствует этой структуре « - », тогда разделите столбцы на «исходное имя столбца_First» и «исходное имя столбца_Last. "а затем отбросьте старые столбцы и тире. Кроме того, некоторые из ячеек в столбцах имеют второй da sh, как в «John-Doe-M», поэтому я пытаюсь придумать способ интегрировать оператор try / except или if, чтобы учесть и этот случай. . До сих пор мой неудачный код выглядит следующим образом:

#Split the columns that contain a record (-) and create two new columns of wins and losses
def split_record(df, col):
    try:
        df[[df.add_suffix('First'), df.add_suffix('Last')]] = df.col.apply(lambda x: pd.Series(str(x).split('-')))
    except:
        try:
            df[[df.add_suffix('First'), df.add_suffix('Last'), df.add_suffix('M'),]] = df.col.apply(lambda x: pd.Series(str(x).split('-')))
        except:
            pass
    return df, col

for col in raw_df:
    if '-' in col:
        split_record(raw_df, col)

Я ломал голову над этим некоторое время, поэтому любая помощь приветствуется!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...