# Combining two Series into a DataFrame in pandas

###### Posted By: Anonymous

I have two Series `s1`

and `s2`

with the same (non-consecutive) indices. How do I combine `s1`

and `s2`

to being two columns in a DataFrame and keep one of the indices as a third column?

## Solution

I think `concat`

is a nice way to do this. If they are present it uses the name attributes of the Series as the columns (otherwise it simply numbers them):

```
In [1]: s1 = pd.Series([1, 2], index=['A', 'B'], name='s1')
In [2]: s2 = pd.Series([3, 4], index=['A', 'B'], name='s2')
In [3]: pd.concat([s1, s2], axis=1)
Out[3]:
s1 s2
A 1 3
B 2 4
In [4]: pd.concat([s1, s2], axis=1).reset_index()
Out[4]:
index s1 s2
0 A 1 3
1 B 2 4
```

*Note: This extends to more than 2 Series.*

###### Answered By: Anonymous

Disclaimer: This content is shared under creative common license cc-by-sa 3.0. It is generated from StackExchange Website Network.