Перебирайте столбцы в фрейме данных Pandas и выводите результат в новый фрейм данных - PullRequest
0 голосов
/ 08 октября 2018

Я пытаюсь перебрать столбцы в кадре данных pandas размером 6 x 22, используя df.apply(min_max, axis=0), и получить вывод в новом кадре данных с двумя столбцами, как показано ниже.

   def min_max(column):
      column_names = ['column', 'value']
      output = pd.DataFrame(columns = column_names)
      output2 = pd.DataFrame([column, abs(column.max() - column.min())])
      return output.append(output2)

dfпоказано в прикрепленном img: первые несколько столбцов на текущем фрейме данных

Два вопроса:

  1. Я получаю сообщение об ошибке ниже:

    TypeError: ("объект типа 'Timedelta' не имеет len ()", "произошел на дату индекса")

  2. Есть ли способ исключить все столбцы, которыене dtype = int?Это входит в функцию?

Сильно обделен.

1 Ответ

0 голосов
/ 08 октября 2018

Вот решение:

df.select_dtypes(exclude = ['int']).apply(min_max, axis = 0)

pandas.DataFrame.select_dtypes

Чтобы выбрать все числовые значения, используйте numpy.number.

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