2013-02-18 77 views
0

特定列下面我有這樣的代碼:如何插入數據的csv文件蟒蛇

def _download_url(url): 
    response = None 
    try: 
     response = urllib.request.urlopen(url) 

     content_bytes=response.read() 
     content_string=content_bytes.decode(encoding='utf-8') 

     data = io.StringIO(content_string) 
     mycsv=csv.reader(data) 
     mycsv = csv.DictReader(data) 

     print('{:<11} {:<8} {:<12} {:<12}'.format('Date', 'Close', 'Indicator', 'Signal')) 
     for row in mycsv: 

      print('{:<11} {:<8}'.format(row['Date'], row['Adj Close'])) 

如何創建一個代碼,這樣我可以插入下方的指示燈/信號塔數據? 我想從「關閉」列獲取數據,並使用數字,用於列表中找到平均值和打印出來的指標列的下面。然後使用指標中的結果並在信號列下面對它做些什麼。

- 編輯 - 這是它的外觀,當我運行它

Date  Close Indicator Signal  
2012-11-30 698.37 
2012-11-29 691.89 
2012-11-28 683.67 
2012-11-27 670.71 
2012-11-26 661.15 
2012-11-23 667.97 

但是像,我希望它看起來像

Date  Close Indicator Signal  
2012-11-30 698.37  0 
2012-11-29 691.89 -put data here- 
2012-11-28 683.67 -another data- 
2012-11-27 670.71 -etc- 
2012-11-26 661.15 
2012-11-23 667.97 

我想抓住從第二列數據(關閉)並使用這些數字來計算平均值

+0

是否可以顯示您的輸入數據是什麼樣子以及您希望輸出的樣子 - 以及說明性數據。作爲使用「關閉」列平均「指標」是混亂的,至少對我來說,是什麼在下一行發生的呢? – sotapme 2013-02-18 09:27:02

+0

我爲了顯示我想要感謝編輯 – Kara 2013-02-18 19:29:23

回答

0

仍然不理解OP想要什麼,因爲以下將

下方的指示燈/信號柱插入數據 但我無法相信這就是OP想要什麼。

所以通過把calculated_indicatorcalculated_signal中,我們就可以判斷這些功能對行或全套行的工作。

def calculated_indicator(row): 
    return 0 

def calculated_signal(row): 
    return 0 

def _download_url(url): 
    response = None 
    try: 
     response = urllib.request.urlopen(url) 

     content_bytes=response.read() 
     content_string=content_bytes.decode(encoding='utf-8') 

     data = io.StringIO(content_string) 
     mycsv=csv.reader(data) 
     mycsv = csv.DictReader(data) 

     print('{:<11} {:<8} {:<12} {:<12}'.format('Date', 'Close', 'Indicator', 'Signal')) 
     for row in mycsv: 

      print('{:<11} {:<8}'.format(row['Date'], row['Adj Close'], calculated_indicator(row), calculated_signal(row)))