заменить значения в столбце списков на основе условия pandas - PullRequest
0 голосов
/ 08 марта 2020

У меня есть столбец списков, в котором я хочу провести l oop через каждый элемент списка во всех строках и заменить все числовые значения c на строковое значение. Например,

                                          column
      [10.50.21.134,10.30.2.197,SLO-Y30-001,IVER02-Y30-001,DCT-Y30-001]
      [CHTN,WBGN,10.50.21.134,10.50.21.136,10.50.21.135]

Я хотел бы провести l oop через каждый элемент списка и сравнить значения в нескольких строках и заменить все строки значением, имеющим строку

Ожидается вывод:

                                       column
               [CHTN,WBGN,SLO-Y30-001,IVER02-Y30-001,DCT-Y30-001]
               [CHTN,WBGN,SLO-Y30-001,IVER02-Y30-001,DCT-Y30-001]

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

Что я могу сделать, так это до сгруппировать по строкам, заменить все значения di git нулями, но я застрял, и я не знаю, как объединить или объединить, сохраняя порядок элементов списка лучший способ сравнить каждый элемент во всех строки и замените

   @staticmethod
   def test(df):
            df['doc']=df['nwctdoctrail'].apply(lambda x : x.split(','))
            df['doc']=df['doc'].apply(lambda x : [w[:-2] for w in x])
            df['doc']=df['doc'].apply(lambda x: [w.replace(w,' ' if w[0].isdigit() else w) for w in x])



   @staticmethod
   def preprocess_df(df):
    test=df.groupby('grouping_key').apply(test())

Результат, который я получаю:

                         doc

               ['','',SLO-Y30-001,IVER02-Y30-001,DCT-Y30-001]
               [CHTN,WBGN,'','','']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...