Почему df.loc[] возвращает одну и ту же строку дважды, если она только одна?Python

Программы на Python
Anonymous
Почему df.loc[] возвращает одну и ту же строку дважды, если она только одна?

Сообщение Anonymous »

В настоящее время я работаю с несколькими CSV-файлами цен на акции, но команда .loc[] ведет себя странно после использования pd.read_csv для ввода данных в df.
Я делаю это с 10 файлы, но мне хотелось сделать гораздо больше, прежде чем я столкнулся с этой проблемой, которая происходит буквально ТОЛЬКО с ОДНИМ файлом...
По сути, я хочу подмножество каждого df, чтобы показывать только данные с 9:30 до 16:00, и это простая операция, которая всегда работала без проблем:

Код: Выделить всё

open = dt.time(hour= 9, minute= 30)
close = dt.time(hour= 15, minute= 59)
но когда я звоню:

Код: Выделить всё

 df.loc[open]
Я получаю:

Код: Выделить всё

     Open   High     Low   Close  Volume
Date
2017-12-29 09:30:00  119.46  119.6  119.42  119.57     480
2017-12-29 09:30:00  119.46  119.6  119.42  119.57     480
НО в CSV нет дубликатов, и когда я заставляю его печатать части Dataframe или приостанавливать отладчик во время его запуска, чтобы показать мне df в памяти, дубликатов также нет .
это происходит в любой время, которое я выбираю, и с любыми именами столбцов, которые я добавляю в команду loc[].
НО только с ОДНИМ фреймов данных.
Это также мешает другим частям моего сценария, например, когда я хочу получить значение из строки и использовать его в расчете, он выдает ошибку, потому что эта странность возвращает серию, хотя она должна просто возвращать одно значение.
Я использовал .loc и Datetime.Indexes много раз раньше, но никогда не сталкивался с этим..
Я пробовал сбросить индекс, использование разного времени, создание копий фреймов данных, кажется, ничего не работает, и он продолжает притворяться, что каждая строка существует дважды (в этом конкретном фрейме данных), что не так...
Спасибо всем, кто пытается помочь.


Подробнее здесь: https://stackoverflow.com/questions/642 ... s-only-one

Вернуться в «Python»