2015-05-18 112 views
0

我運行以下內容:output.to_csv("hi.csv")其中output是一個熊貓數據框。如何在Python中編寫.csv文件?

我的變量都有值,但是當我在iPython中運行這個時,沒有創建文件。我該怎麼辦?

+0

什麼樣的變量是'output'?我嘗試重現這個問題,但是當我將'output'作爲一個字符串時,我收到錯誤消息'AttributeError:'str'object has no attribute'to_csv''輸出爲 – physicalattraction

+0

是熊貓數據幀 –

+0

你是否收到任何錯誤信息? –

回答

3

最好給的完整路徑爲輸出CSV文件。可能是你正在檢查一個錯誤的文件夾。

+0

我可以刪除這個問題,因爲問題太平常了。謝謝。 –

1

我不確定這會對你有用,但我會用python頻繁地寫入CSV文件。以下是使用CSV模塊生成隨機向量(X,V,Z)值並將其寫入CSV的示例。 (路徑是操作系統路徑是OSX,但你應該得到即使在不同的操作系統的想法。

工作編寫Python到CSV例如

import os, csv, random 

# Generates random vectors and writes them to a CSV file 

WriteFile = True # Write CSV file if true - useful for testing 


CSVFileName = "DataOutput.csv" 
CSVfile = open(os.path.join('/Users/Si/Desktop/', CSVFileName), 'w') 

def genlist(): 
    # Generates a list of random vectors 

    global v, ListLength 
    ListLength = 25 #Amount of vectors to be produced 

    Max = 100 #Maximum range value 

    x = [] #Empty x vector list 
    y = [] #Empty y vector list 
    z = [] #Empty x vector list 

    v = [] #Empty xyz vector list 

    for i in xrange (ListLength): 
     rnd = random.randrange(0,(Max)) #Generate random number 
     x.append(rnd) #Add it to x list 

    for i in xrange (ListLength): 
     rnd = random.randrange(0,(Max)) 
     y.append(rnd) #Add it to y list 

    for i in xrange (ListLength): 
     rnd = random.randrange(0,(Max)) #Generate random number 
     z.append(rnd) #Add it to z list 

    for i in xrange (ListLength): 
     merge = x[i], y[i],z[i] # Merge x[i], y[i], x[i] 
     v.append(merge) #Add merged list into v list 

def writeCSV(): 
    # Write Vectors to CSV file 

    wr = csv.writer(CSVfile, quoting = csv.QUOTE_MINIMAL, dialect='excel') 
    wr.writerow(('Point Number', 'X Vector', 'Y Vector', 'Z Vector')) 

    for i in xrange (ListLength): 
     wr.writerow((i+1, v[i][0], v[i][1], v[i][2])) 

    print "Data written to", CSVfile 

genlist() 

if WriteFile is True: 
    writeCSV() 

希望有有用在這裏爲你的東西!