извлечь предпоследний элемент для столбца с разделением точек - PullRequest
0 голосов
/ 26 мая 2020

У меня есть следующие столбцы во фрейме данных:

  `'org.eclipse.collections.impl.jmh.LongIntMapTest.copyTest'
   'org.eclipse.collections.impl.jmh.LongIntMapTest.get'
   'org.eclipse.collections.impl.jmh.LongIntMapTest.preizedPut'
   'org.eclipse.collections.impl.jmh.LongIntMapTest.put'
   'org.eclipse.collections.impl.jmh.LongIntMapTest.remove'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_eager_ec'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_eager_ec_hand_coded'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_lazy_ec'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_lazy_ec_hand_coded'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_lazy_jdk'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_lazy_scala'
  'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.parallel_lazy_scala_hand_coded'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.serial_eager_ec'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.serial_eager_ec_hand_coded'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.serial_eager_scala'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.serial_lazy_ec'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.serial_lazy_jdk'
   'org.eclipse.collections.impl.jmh.FunctionalInterfaceTest.serial_lazy_scala'` 

Как мы видим, длина отличается, я хочу добавить новый столбец во фрейм данных, названный как класс, этот столбец содержит предпоследняя часть имени. все значения разделены точкой. Таким образом, ожидаемый результат будет представлять собой фрейм данных с 2 столбцами, первый - это эталонный тест (тот, который прикреплен в этом сообщении), а второй - это класс (предпоследний элемент в значениях эталонного теста, например 'org.eclipse.collections.impl.jmh.LongIntMapTest in the first row FunctionalInterfaceTest` в шестом)

1 Ответ

1 голос
/ 26 мая 2020

IIU C использовать:

df['new'] = df['col'].str.split('\.').str[-2]
...