2013-08-06 12 views

Odpowiedz

12

Można użyć concat:

In [11]: s1 
Out[11]: 
id 
1  3 
3  19 
4  15 
5  5 
6  2 
Name: count_1, dtype: int64 

In [12]: s2 
Out[12]: 
id 
1  3 
3  1 
4  1 
5  2 
6  1 
Name: count_2, dtype: int64 

In [13]: pd.concat([s1, s2], axis=1) 
Out[13]: 
    count_1 count_2 
id 
1   3  3 
3  19  1 
4  15  1 
5   5  2 
6   2  1 

Uwaga: jeśli były DataFrame (zamiast Series) można użyć merge:

In [21]: df1 = s1.reset_index() 

In [22]: s1.reset_index() 
Out[22]: 
    id count_1 
0 1  3 
1 3  19 
2 4  15 
3 5  5 
4 6  2 

In [23]: df2 = s2.reset_index() 

In [24]: df1.merge(df2) 
Out[24]: 
    id count_1 count_2 
0 1  3  3 
1 3  19  1 
2 4  15  1 
3 5  5  2 
4 6  2  1 
+0

Dzięki za to - w pierwszej przykład "id" w kolumnie 1, znajduje się w wierszu poniżej nagłówków "count_1" i "count_2" - aby uzyskać je wszystkie w tym samym wierszu, czy podążam za twoim drugim przykładem? – user7289

+0

możesz użyć reset_index, który przenosi indeks do jednej z kolumn. –

+0

@ user7289 tj. 'Pd.concat ([s1, s2], axis = 1) .reset_index()' –