У меня большой DataFrame, в котором есть только один столбец со всеми значениями. Мне нужно разделить данные на несколько столбцов. После долгих проб и ошибок я сдался и обратился к вам за помощью.
заголовок DataFrame выглядит следующим образом:
строки являются объектом серии. не значения
column1
---------------------------------------------------------------------
MultiIndex1 | 1.00 2.00 3.00 4.00 5.00 6.00 7.00
| 1.00 2.00 3.00 4.00 5.00 6.00 7.00
| 1.00 2.00 3.00 4.00 5.00 6.00 7.00
| 1.00 2.00 3.00 4.00 5.00 6.00 7.00
| 1.00 2.00 3.00 4.00 5.00 6.00 7.00
| 1.00 2.00 3.00 4.00 5.00 6.00 7.00
мой желаемый результат должен выглядеть следующим образом:
column1|column2|column3|column4|column5|column6|column7
---------------------------------------------------------------------
MultiIndex1 | 1.00 | 2.00 | 3.00 | 4.00 | 5.00 | 6.00 | 7.00
| 1.00 | 2.00 | 3.00 | 4.00 | 5.00 | 6.00 | 7.00
| 1.00 | 2.00 | 3.00 | 4.00 | 5.00 | 6.00 | 7.00
| 1.00 | 2.00 | 3.00 | 4.00 | 5.00 | 6.00 | 7.00
| 1.00 | 2.00 | 3.00 | 4.00 | 5.00 | 6.00 | 7.00
| 1.00 | 2.00 | 3.00 | 4.00 | 5.00 | 6.00 | 7.00
я пытался:
df.columns = ['col1', 'col2', 'col3', 'col4', 'col5' ...]
Я пытался превратить его в серию и обратно в ДФ.
попытался применить функции .str.split.
много нарезки и конкат, но безуспешно.
помощь будет высоко ценится.
Спасибо!
вот несколько первых строк моего набора данных, например:
дата и AALR3 - мультииндекс строки
2019-01-02; AALR3; 0000000020; 000000000013,300000; 000000000000000100; 10: 00: 04,961; 1; 2019-01-02; 000086597137782; 000000000310091; 2; 2019-01-02; 000086597142909; 000000000310092; 1; 0; 00000072; 00000174
2019-01-02; AALR3; 0000000010; 000000000013,310000; 000000000000003000; 10: 00: 04,961; 1; 2019-01-02; 000086597135827; 000000000310088; 2; 2019-01-02; 000086597142909; 000000000310089; 1; 0; 00000120; 00000174
2019-01-02; AALR3; 0000000050; 000000000013,390000; 000000000000000200; 10: 11: 40,214; 1; 2019-01-02; 000086597182855; 000000000400273; 1; 2019-01-02; 000086597151579; 000000000400274; 2; 0; 00000058; 00000008
2019-01-02; AALR3; 0000000040; 000000000013,380000; 000000000000000100; 10: 11: 40,214; 1; 2019-01-02; 000086597182855; 000000000400271; 1; 2019-01-02; 000086597151578; 000000000400272; 2; 0; 00000058; 00000174
2019-01-02; AALR3; 0000000030; +000000000013,380000; 000000000000000100; 10: 11: 40,214; 1; 2019-01-02; 000086597182855; 000000000400269; 1; 2019-01-02; 000086597151189; 000000000400270; 2; 0; 00000058; 00000308 * +1023 *
я читаю это с:
pd.read_csv('//path_to_file', sep=';')
Я хочу назвать столбцы так.
df.columns = ['Session Date','Instrument Symbol','Trade Number','Trade Price','Traded Quantity',
'Trade Time','Trade Indicator','Buy Order Date','Sequential Buy Order Number',
'Secondary Order ID - Buy Order','Aggressor Buy Order Indicator','Sell Order Date',
'Sequential Sell Order Number','Secondary Order ID - Sell Order','Aggressor Sell Order Indicator',
'Cross Trade Indicator','Buy Member','Sell Member']
UPDATE:
решения были эффективными, большое спасибо.
Я почти так, как я хочу. Есть ли способ сделать дубликаты индексов MultiIndex? Мне удалось сделать даты, но не символ. Спасибо