2017-10-24 7 views
0

DataFrame의 숫자 열을 연결하려고합니다.DataFrame의 Concat number 열을 동적으로

먼저 숫자를 연결하기 위해 나는이 훌륭한 해결책을 찾았다. here.

In [1]: l = [1,2,3,4] 

In [2]: int(''.join(map(str,l))) 
Out[2]: 1234 

이제 이것을 DataFrame 열에 적용해야합니다. 나는 이렇게 할 수있다 :

In [1]: import pandas as pd 

In [2]: df = pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]}) 

In [3]: df 
Out[3]: 
    a b c 
0 1 4 7 
1 2 5 8 
2 3 6 9 

In [4]: df['concat'] = df['a'].astype(str) + df['b'].astype(str) + df['c'].astype(str) 

In [5]: df 
Out[5]: 
    a b c concat 
0 1 4 7 147 
1 2 5 8 258 
2 3 6 9 369 

그러나 이것을 동적 열 이름으로 어떻게 할 수 있습니까? 별도로 각 열을 수동으로 작성하지 않아도됩니다. 대신, 열 이름 목록을 가져오고 그 내용을 연결하기 위해 반복합니다.

(나는 더 큰 DataFrames로 작업하는 것이 게으르지 않습니다.)

감사합니다.

답변

2

어때? 행 방향으로 모든 열을 연결합니다.

df.apply(lambda x: ''.join(map(str,x)),axis=1) 

0 147 
1 258 
2 369 
dtype: object