2017-09-10 7 views
0

새로운 팬더 시리즈를 다른 열의 CSV 파일로 저장하는 방법을 궁금합니다. 두 열에 'A'가 포함 된 두 개의 CSV 파일이 있다고 가정합니다. 나는 그 (것)들에 어떤 수학 기능을하고 그 후에 새로운 가변을 "B"로 창조한다. 예를 들어팬더 데이터 프레임을 CSV 파일로 저장

:이 읽고 된 제 1 및 제 2 csv 파일의 모든 행까지 계속됩니다

data = pd.read_csv('filepath') 

data['B'] = data['A']*10 

# and add the value of data.B into a list as a B_list.append(data.B) 

.

두 CSV 파일의 새로운 스프레드 시트에 B 열을 저장하고 싶습니다. 이 코드를 사용하여

colum1(from csv1)  colum2(from csv2)  
    data.B.value    data.b.value 

: 예를 들어 나는이 결과를 필요

pd.DataFrame(np.array(B_list)).T.to_csv('file.csv', index=False, header=None) 

내가 원하는 결과를 얻을 수 없습니다.

답변

1

팬더 DataFrame의 각 열이 팬더 Series이기 때문에. 귀하의 B_list은 실제로 당신이 다음 트랜스 DataFrame() 생성자에 캐스트 할 수 팬더 Series의 목록 (또는 @jezrael이 pd.concat(..., axis=1)와 수평 병합와 같이)

finaldf = pd.DataFrame(B_list).T 
finaldf.to_csv('output.csv', index=False, header=None) 

을 그리고 CSV한다, 불평등 한 일련의 서로 다른 행이 있습니다 해당 행에 NAN으로 채워집니다.

+0

저는 파이썬과 팬더에 초보입니다 :). 도와 줘서 고마워. – Elham

2

내가 먼저 data2에서 열이 data1에서 concat 열을 필요가 있다고 생각 :

df = pd.concat(B_list, axis=1) 
df.to_csv('file.csv', index=False, header=None) 
+0

응답 해 주셔서 감사합니다.하지만 data1 및 data2가 없으므로 모든 csv 파일을 읽을 때까지 데이터가 루프에서 업데이트됩니다. – Elham

+1

'data1'은'Dataframe'1과'data2' 두 번째 Dataframe의 이름입니다. – jezrael

+0

2 개의 데이터 프레임도 없습니다. 원본 csv 파일은 새 열 B에 의해 업데이트되고 루프에서이 열은 매번 업데이트됩니다. 데이터를 잃어 버리기 전에이 열을 새로운 CSV 파일에 저장하고 싶습니다 .B. 아마 내가 무슨 뜻인지 잘 설명하지 못합니다. – Elham

관련 문제