0

I have 2 dataframe 1st

summ    From Пк+    To Пк+  Widht   Distance    V1_left, м3 V2_left, м3
Nan     150         200      3        50           10          50
Nan     250         400      3        150          40          40
sum0                                  200          50          90
Nan     1000        1200     4        200          50          50
sum1                                  200          50          50
Nan     2300        2500     5        200          50          50
        2600        2700     5        100          50          50
        2700        2800     5        100          50          50
sum2                                  400          150         150

2nd

summ    From Пк+    To Пк+  Widht   Distance    V1_right, м3    V2_right[enter image description here][1], м3
Nan      150         200    3          50          10         50
Nan      250         400    3          150         40        40
Nan      500         600    3          100         70        30
Nan      600         700    3          100         100       20
Nan      800         900    3          100         130       10
sum0                                   500         350       150
Nan      1100        1200   4          100         50        50
Nan      1500        1800   4          300         50        50
sum1                                   400         100       100
Nan      2300        2500   5          200         50         50
sum2                                   200         50         50

I already tried, pd.merge, concat, but still cant get result what i need

<table><tbody><tr><th>summ</th><th>From Пк+</th><th>To Пк+</th><th>Widht</th><th>Distance</th><th>V1_left, м3</th><th>V2_left, м3</th><th>From Пк+</th><th>To Пк+</th><th>Widht</th><th>Distance</th><th>V1_right, м3</th><th>V2_right, м3</th></tr><tr><td>Nan</td><td>150</td><td>200</td><td>3</td><td>50</td><td>10</td><td>50</td><td>150</td><td>200</td><td>3</td><td>50</td><td>10</td><td>50</td></tr><tr><td>Nan</td><td>250</td><td>400</td><td>3</td><td>150</td><td>40</td><td>40</td><td>250</td><td>400</td><td>3</td><td>150</td><td>40</td><td>40</td></tr><tr><td>Nan</td><td>500</td><td>600</td><td>3</td><td>100</td><td>70</td><td>30</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td></tr><tr><td>Nan</td><td>600</td><td>700</td><td>3</td><td>100</td><td>100</td><td>20</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td></tr><tr><td>Nan</td><td>800</td><td>900</td><td>3</td><td>100</td><td>130</td><td>10</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td></tr><tr><td>sum0</td><td> </td><td> </td><td> </td><td>500</td><td>350</td><td>150</td><td> </td><td> </td><td> </td><td>200</td><td>50</td><td>90</td></tr><tr><td>Nan</td><td>1100</td><td>1200</td><td>4</td><td>100</td><td>50</td><td>50</td><td>1000</td><td>1200</td><td>4</td><td>200</td><td>50</td><td>50</td></tr><tr><td>Nan</td><td>1500</td><td>1800</td><td>5</td><td>300</td><td>50</td><td>50</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td></tr><tr><td>sum1</td><td> </td><td> </td><td> </td><td>100</td><td>50</td><td>50</td><td> </td><td> </td><td> </td><td>200</td><td>50</td><td>50</td></tr><tr><td>Nan</td><td>2300</td><td>2500</td><td>5</td><td>200</td><td>50</td><td>50</td><td>2300</td><td>2500</td><td>5</td><td>200</td><td>50</td><td>50</td></tr><tr><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>2600</td><td>2700</td><td>5</td><td>100</td><td>50</td><td>50</td></tr><tr><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>Nan</td><td>2700</td><td>2800</td><td>5</td><td>100</td><td>50</td><td>50</td></tr><tr><td>sum2</td><td> </td><td> </td><td> </td><td>200</td><td>50</td><td>50</td><td> </td><td> </td><td> </td><td>400</td><td>150</td><td>150</td></tr><tr><td>400</td><td>150</td><td>150</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr></tbody></table>
MrKyorl
  • 1
  • 1
  • Welcome to SO. Can you please print the shapes of your dataframes, and explain a little on how you want to merge them and by what rules? Helps people (like me, who are too lazy to look for differences in the three frames) to supply an answer. Reading how to create a [MCVE](https://stackoverflow.com/help/minimal-reproducible-example) also helps. – flurble Jun 06 '19 at 09:00

1 Answers1

0

did you try the following code?

import pandas as pd
df = pd.merge(df1, df2, on=['Summ', 'From', 'Nk+', 'To', 'Nk+'], how='outer')

basically oyu just need to say which columns you still want to keep in the new dataframe as Index and the method 'outer' will merge a full join.

PV8
  • 5,799
  • 7
  • 43
  • 87