2017-05-19 49 views
0

我是python的新手,所以請溫和。我試圖從列中的值開始以「球1」到「裝球」,並創建新組稱爲球,但我不斷收到此錯誤在python問題中切片

KeyError: "None of [['Ball_1', 'Ball_Set']] are in the [columns]"

這裏是我的代碼

import pandas as pd 

def read_csv(url): 
    df = pd.read_csv(url, sep='\t', na_values=".") 
    return df 

url ='https://www.national-lottery.co.uk/results/lotto/draw-history/csv' 
df = read_csv(url) 

#splices file between the two arguments 
Balls = df.loc[:,['Ball_1','Ball_Set']] 
print(Balls) 

我期待從第1球開始列中包含的所有數據的打印,然後繼續一路設置球。

+1

從外觀上來看,你的列被稱爲''球1,...,球Set'' ** **無下劃線。值由逗號分隔,而不是由''\ t''分隔。 –

回答

1

該文件中的列名稱被命名爲Ball 1,Ball 2, ...,而不是Ball_1,Ball_2。嘗試刪除下劃線。

此外,分隔符是,而不是\t。所以使用sep=','

完整的工作代碼:

import pandas as pd 

url ='https://www.national-lottery.co.uk/results/lotto/draw-history/csv' 
df = pd.read_csv(url, sep=',', na_values=".") 

Balls = df.loc[:,['Ball 1','Ball Set']] 
print(Balls) 
+0

非常感謝你的時間,非常有幫助,只有當別人指出你的錯誤時,你纔會注意到這樣簡單的事情。再次感謝你 – Mortgage1