Как принять в массиве разделенные тестовые индексы? sklearn python [дубликат]

Мне нужно было что-то вроде этого, и я проверил некоторые из них, самый быстрый из которых я узнал:

  str (число) [:: - 1] .find ('.') [  ! d1] 

Из-за проблемы с плавающей запятой все модульные дали мне ложные результаты даже с Decimal (number) (обратите внимание, что мне это нужно в скрипте, чтобы фиксировать цены всего db)

  len (str (Десятичная (str (число)))% Десятичная (1))) - 2  

Необходимость поместить строку в десятичную строку довольно непростая когда у нас есть плавающие или что-то вроде.

Вот моя «скамья»: https://repl.it/FM8m/17

163
задан ericmjl 21 June 2013 в 18:25
поделиться

5 ответов

Поскольку pandas 0.13 вы также можете использовать get_values :

df.index.get_values()
229
ответ дан Andy Hayden 17 August 2018 в 10:28
поделиться
  • 1
    Есть ли разница между этими значениями и значениями? (Я обновил информацию о версии, так как эта функция появляется из документов 0.13.0.) – Andy Hayden 12 December 2014 в 04:12
  • 2
    позволяет ли этот подход поддерживать порядок индексов? – Donovan Thomson 3 May 2015 в 12:09
  • 3
    @DonovanThomson да! – Andy Hayden 3 May 2015 в 17:42
  • 4
    @ Andy Hayden: Разве не разница в том, что .get_values ​​является официальным способом получения только текущих значений, в то время как .values ​​(например, в мультииндексе) может возвращать значения индекса, для которых строки или столбцы были удалены? – Ezekiel Kruglick 8 October 2015 в 22:07
  • 5
    @EzekielKruglick, так что это всегда копия? Связанный с документацией очень легкий, я не думал, что вы так обманываете (даже если они находятся в МИ, они не будут в значениях) было бы замечательно увидеть пример, который демонстрирует это! – Andy Hayden 8 October 2015 в 22:16
  • 6
    @AndyHayden: Я думаю, что я неправильно читал ваш комментарий. Вы правы. Значения хороши, .level дает устаревшие и get_values ​​дает вам текущие значения правильно, исключая выпавшие строки / cols. Оригинальная проблема github: github.com/pydata/pandas/issues/3686 Но я только что проверил, и она выглядит как .values ​​(конечно!), Дает актуальную информацию только в другой форме, чем я думал, это то, о чем мы говорили – Ezekiel Kruglick 8 October 2015 в 22:34
236
ответ дан Andy Hayden 6 September 2018 в 08:01
поделиться

Если вы имеете дело с многоиндексным фреймворком данных, вам может быть интересно извлечь только столбец одного имени мультииндекса. Вы можете сделать это как

df.index.get_level_values('name_sub_index')

, и, конечно, name_sub_index должен быть элементом FrozenList df.index.names

30
ответ дан gg349 17 August 2018 в 10:28
поделиться

Я преобразовал pandas dataframe в list, а затем использовал базовый list.index(). Что-то вроде этого:

dd = list(zone[0]) #Where zone[0] is some specific column of the table
idx = dd.index(filename[i])

У вас есть значение индекса как idx.

0
ответ дан Sarvagya Gupta 17 August 2018 в 10:28
поделиться

Вы можете использовать df.index для доступа к объекту индекса, а затем получить значения в списке, используя df.index.tolist().

57
ответ дан user2285236 17 August 2018 в 10:28
поделиться
  • 1
    Он возвращает instanceMethod, а не массив списка – V Shreyas 1 June 2016 в 10:45
  • 2
    @VShreyas, как насчет df.index.values.tolist() – LancelotHolmes 10 March 2017 в 03:06
  • 3
    Это должно быть хорошо – V Shreyas 10 March 2017 в 08:57
  • 4
    df.index.tolist() не возвращает метод экземпляра. Он возвращает список индексов. Это метод, определенный по индексу панды. В то время как вызывать значения сначала - это возможность, делегирование задания на numpy не является исправлением - просто альтернативой. – user2285236 20 May 2017 в 08:08
Другие вопросы по тегам:

Похожие вопросы: