[英]How to Download Automatically an xml format file direct from my computer or in download folder after converted into CSV TO XML
[英]Download .csv file format in SAS from the web
我想知道如何使用SAS下載某些.csv文件。
在網上瀏覽時,我發現可以通過運行以下腳本來做到這一點:
filename NAME url "http://.../NAME_OF_THE_FILE.csv"
特別是,我想了解這種陳述是如何工作的,在這種情況下我不能使用它。
例如,假設我們必須下載一個上傳到網頁上的.csv文件,例如在該網站上 ,該網站可以找到可用的足球比賽數據。
在這種情況下,請使用以下腳本下載文件:
filename csv url "http://www.football-data.co.uk/mmz4281/1617/E0.csv";
以下是用於在SAS中導入數據的代碼:
proc import file = csv
out = junk_00
dbms = csv replace;
delimiter = ",";
run;
一切正常。 該文件對應於2016/2017賽季,其中包含英超聯賽數據,您可以在第一個鏈接上找到該文件。
相反,對於2016/2017賽季的冠軍數據,使用如下相同的腳本:
filename csv url "http://www.football-data.co.uk/mmz4281/1617/E1.csv";
proc import file = csv
out = junk_00
dbms = csv replace;
delimiter = ",";
run;
您得到以下錯誤:
Import unsuccessful. See SAS Log for details.
在“日志”窗口中瀏覽時,您可以在“日志”行中看到以下注釋/警告:
Invalid data for Date
,即使文件格式正確也是如此。
我不理解有時腳本起作用而有時不起作用的原因,因為這種情況發生在其他文件中,盡管該文件沒有以相同的方式正確地損壞和格式化。
怎么了? 有人可以幫助我了解為什么會這樣嗎?
提前謝謝大家!
Proc Import必須猜測數據類型。 由於某種原因,它認為日期字段的格式為MMDDYY,但實際上是DDMMYY。 也許使用不一致,我沒有檢查全部,但是可以立即看到錯誤的來源。
解決方案是不使用PROC IMPORT,而使用數據步驟。 如果所有文件的結構相同,那么這可以作為解決方案,但是如果每個文件都不相同,則這不是可行的解決方案。
另一個可能的解決方法是下載數據,然后將GUESSINGROWS設置為較大數量,然后讀取文件。 它會在猜測類型之前先讀取所有值,這樣會更好。 使用文件名URL時,此解決方案似乎不起作用,但我不知道為什么。
我認為這不是一個完整的答案,但是它應該可以為您提供一些幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.