Копирование данных из другого DataFrame без его индексаPython

Программы на Python
Ответить
Anonymous
 Копирование данных из другого DataFrame без его индекса

Сообщение Anonymous »

У меня есть два DataFrame панд

один из них пуст, и я создал его следующим образом:

main_data = pd.DataFrame(columns='m10 m9 m8 m7 m6 m5 m4 m3 m2 m1 Day Price'.split())


Другой полон данных с такими же именами столбцов. Я пытаюсь скопировать такие столбцы:

main_data['m10'] = md['Price'][0:-1]
main_data['m9'] = md['Price'][1:-2]
main_data['m8'] = md['Price'][2:-3]
main_data['m7'] = md['Price'][3:-4]
main_data['m6'] = md['Price'][4:-5]
main_data['m5'] = md['Price'][5:-6]
main_data['m4'] = md['Price'][6:-7]
main_data['m3'] = md['Price'][7:-8]
main_data['m2'] = md['Price'][8:-9]
main_data['m1'] = md['Price'][9:-10]
main_data['Price'] = md['Price'][10:]
main_data['Day'] = md['Day'][10:]


m# — это просто цена следующего дня, а цена и день — это последний день. Я пытаюсь поместить последние десять цен в одну и ту же строку, а также окончательную цену и день.

У меня 4000 строк в DataFrame. Я не уверен, правильно ли я поступаю. Вот идея, которую я пытаюсь реализовать в строках:

PriceDay1 PriceDay2 PriceDay3 ... PriceDay10 and FinalDayPrice and FinalDayDate


Вот и проблема. Когда я копирую данные из md в main_data, индекс md также копируется в main. Например, первая строка main_data[m9] становится NaN, потому что md['m9'] начинается с индекса 1. Как я могу решить эту проблему? Также есть ли способы получше?

Спасибо

РЕДАКТИРОВАТЬ:
Добавление образца данных

"Date","Price","Open","Hi","Lo","Volume","Diff"
"14.03.2001","10.399,18","10.824,05","10.982,04","10.335,48","0","-3,93"
"15.03.2001","10.887,03","10.399,18","10.887,03","10.119,57","0","4,69"
"16.03.2001","11.191,77","10.887,03","11.361,73","10.769,92","0","2,80"
"19.03.2001","10.856,19","11.191,77","11.551,98","10.790,02","0","-3,00"
"20.03.2001","11.284,13","10.856,19","11.368,96","10.856,19","0","3,94"
"21.03.2001","10.952,04","11.284,13","11.438,85","10.894,71","0","-2,94"
"22.03.2001","10.662,25","10.952,04","10.980,85","10.465,05","0","-2,65"
"23.03.2001","10.619,43","10.662,25","10.797,66","10.519,57","0","-0,40"
"26.03.2001","10.598,85","10.619,43","10.748,71","10.493,71","0","-0,19"
"27.03.2001","10.129,49","10.598,85","10.598,85","10.068,42","0","-4,43"
"28.03.2001","9.699,53","10.129,49","10.129,49","9.219,91","0","-4,24"
"29.03.2001","9.073,53","9.699,53","9.699,53","8.962,83","0","-6,45"
"30.03.2001","10.177,57","9.073,53","10.201,48","9.073,53","0","12,17"


ВЫВОД:

m10 m9 m8 m7 m6 m5 \
0 10399.18 NaN NaN NaN NaN NaN
1 10887.03 10887.03 NaN NaN NaN NaN
2 11191.77 11191.77 11191.77 NaN NaN NaN
3 10856.19 10856.19 10856.19 10856.19 NaN NaN
4 11284.13 11284.13 11284.13 11284.13 11284.13 NaN
5 10952.04 10952.04 10952.04 10952.04 10952.04 10952.04
6 10662.25 10662.25 10662.25 10662.25 10662.25 10662.25
7 10619.43 10619.43 10619.43 10619.43 10619.43 10619.43


Подробнее здесь: https://stackoverflow.com/questions/491 ... -its-index
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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