2016-08-21 8 views
1

연결해야하는 열의 목록이 있습니다. 예제 테이블은 다음과 같습니다python-pandas- 루프가있는 열을 연결합니다.

import numpy as np 
cats1=['T_JW', 'T_BE', 'T_FI', 'T_DE', 'T_AP', 'T_KI', 'T_HE'] 
data=np.array([random.sample(range(0,2)*7,7)]*3) 

df_=pd.DataFrame(data, columns=cats1) 

그래서 나는 (그것을 각 값 사이에 빈 공간이 가능하다면) 각 라인의 연결을 얻을 필요가있다. 나는 시도 :

listaFin=['']*1000 
for i in cats1: 
    lista=list(df_[i]) 
    listaFin=zip(listaFin,lista) 

하지만 튜플의 목록을 얻을 :

listaFin: 

[((((((('', 0), 0), 1), 0), 1), 0), 1), 
((((((('', 0), 0), 1), 0), 1), 0), 1), 
((((((('', 0), 0), 1), 0), 1), 0), 1)] 

을 그리고

[0 0 1 0 1 0 1, 
0 0 1 0 1 0 1, 
0 0 1 0 1 0 1] 

같은 것을 얻을 필요가 나는 오직 하나 개의 루프 이하를 사용하여이 작업을 수행 할 수있는 방법 (나는 이중 루프를 사용하고 싶지 않다)?

감사합니다.

답변

0

필자는 파이썬에서 공백으로 구분 된 정수를 문자열에 포함시키지 않고도 그 목록을 가질 수 있다고 생각하지 않습니다.

output = [] 
for i in range(0,df_.shape[0]): 
    output.append(' '.join(str(x) for x in list(df_.loc[i]))) 
print(output) 

출력은 다음과 같습니다 : [ '1 0 0 0 1 0 1', '1 0 0 0 1 0 1', '1 0 0 0 1 내가 가지고있는 대답은, 그런 말로 미루어 보아, 0 1 ']

관련 문제