2015-04-23 61 views
2

我有這方面的Python列表和熊貓Dataframes:的Python寫2所列出並熊貓DataFrames到CSV順序/ EXCEL

list_1 = ['Intro line here - record of method function:'] 
list_2 = ['Record of local minimum follows:'] 

print df_1 
    Col_A Col_B 
    3.4443 1.443 
10.8876 11.99 

print df2 
Trial_1 Trial_2 Trial_3 
    1.1  1.49 775.9 
    11.5  9.57  87.3 
384.61 77.964  63.7 
    12.49 0.156  1.9 
112.11 11.847 178.3 

以下是我想在輸出CSV或Excel文件 - CSV或Excel會工作對我來說:

Intro line here - record of method function: 
    Col_A Col_B 
    3.4443 1.443 
10.8876 11.99 
Record of local minimum follows: 
Trial_1 Trial_2 Trial_3 
    1.1  1.49 775.9 
    11.5  9.57  87.3 
384.61 77.964  63.7 
    12.49 0.156  1.9 
112.11 11.847 178.3 

有沒有寫清單,熊貓,列表,熊貓順序到CSV或Excel文件的方式?

+0

爲什麼要將字符串'Intro line here - 方法函數的記錄:'和'Local of local minimum:'記錄到列表中。爲什麼不只是'string_1 ='這裏介紹 - 方法函數的記錄:''? – Andrew

+0

這只是我創建這兩個字符串的方式 - 我將它們分配給單獨的列表。我也可以使用'list = ['這裏介紹行 - 方法函數的記錄:','list_2 = ['本地最小記錄如下:']'。你的方法也很好。 –

回答

2

pd.to_csv()接受文件句柄作爲輸入,不只是一個文件名。所以你可以打開一個文件句柄並在其中寫入多個文件。下面是一個示例:

from __future__ import print_function 

with open('output.csv', 'w') as handle: 
    for line in list_1: 
     print(line, handle) 
    df1.to_csv(handle, index=False) 
    for line in list_2: 
     print(line, handle) 
    df2.to_csv(handle, index=False) 
+0

謝謝。解決了這個問題。 –

2

csv module提供您所需的功能:

import csv 
with open('SO Example.csv', 'w') as f: 
    writer = csv.writer(f, lineterminator='\n') 
    writer.writerow(list_1) 
    writer.writerow(df1.columns) 
    writer.writerows(df1.values) 
    writer.writerow(list_2) 
    writer.writerow(df2.columns) 
    writer.writerows(df2.values) 
+0

感謝您的解決方案 - 它的工作。我最終使用了一系列解決方案。爲了將列表寫入csv文件,我使用了你的方法。爲了編寫熊貓數據框,我在上面的回覆中使用了方法(S Anand) - 我發現這種方法寫數據框比較方便,因爲我不需要單獨指定列和值。 –