移至主內容

解決操作Spyder在變數欄無法正常顯示變數的問題

Submitted by 肥貓 on

前言

由於業界對於Python的接受度較高,碩士論文寫完後,一直有將學習R的經驗移植到Python的想法。只是服役的地方不能用個人電腦,只有放假才能回家上機也讓效果不彰,加上其他原因,只好留待退伍之後再來做。

我對資料分析的概念,一開始是在R和SPSS上建立的。直到服役期間因為業務需接觸Excel,參考相關工具書之後,才重新(也才知道之前繞了不少冤枉路)建構了資料分析的重要概念,雖然這還沒讓我能活用DBMS。

簡單來說,一個非專業出身的人若要學資料庫管理或資料分析,其實從Excel或Calc開始是學習曲線比較不會那麼陡峭的途徑。我覺得另一本書則提到一個很重要的概念,初學者經常在用Excel的時候,一開始就埋頭去做報表,例如key/數活動人數總共幾人、買東西總共花多少錢之類的,其實這是錯誤的概念。試想,如果你昨天做完一份報表,結果今天臨時有人退出,或突然發現少算了昨天一筆交易之類的,那你前面的努力不就白費了嗎?而且手動改還徒增出錯的風險。比較好的方式,是一開始只建立原始資料,直到要製作報表的時候,再用函數或樞紐分析表下去做。相關細節可以參考前引書和研究方法的教科書,這裡就不深入探討。不過我在服役期間借用這套思維省下了許多時間和力氣。

以事後的角度來看,我的資料分析技巧的學習繞了不少彎路。不過也因為服役時頻繁使用Excel和Calc,才知道退伍後重學R和Python該先在意什麼,可以先跳過什麼。畢竟這兩種程式語言有千萬種函數功能,要看完所有的說明書才來用實在不切實際。

解決操作Spyder在變數欄無法正常顯示變數的問題

好了回來。雖然Python和R的操作思維各異,這從呼叫與使用套件的方式就看得出來,但是觸類旁通的機會偏高。而Spyder和RStudio的操作方式,其實也大同小異。這就像背完英文單字之後,你再去看法語、德語的單字,時常會有似曾相識的感覺,只是念法和文法不太相同。

不過在匯入變數時,卻踢到第一塊鐵板。以國網中心每日更新的COVID-19即時更新報告(全球)為例,我抓下來後以以下程式碼施作(前處理部份省略,有興趣的可以先看截圖內我怎麼做):

USA1=world[world['iso_code']=='USA'] #即篩選時我只要美國的

在結果是成功的情況下。如果在RStudio套用類似的R指令,右上角的「變數瀏覽器」(Variable Explorer)應該馬上會出現USA1的變數。但是Spyder(這裡則用Python指令)卻沒有。

起初我以為是做錯了,但是執行下一個指令:
USA1.to_csv('USA.csv')

USA1.to_excel('USA.xlsx')

卻發現檔案是轉存成功的。這就詭異了,因為這表示USA1的資料確實是存在的,但為何無法顯示呢?直到去查喜好設定(進入路徑為Tools -> Preferences -> Variable explorer)時,才發現原來系統預設會將全部大寫的變數名稱隱藏掉(即下面第一張圖第三個選項),把他取消勾選之後按確定,你要的東西就會回來了(如下面第二張圖顯示)。

 

若你不看我前面寫的一堆廢話,這問題大概兩分鐘就解決了。不過我為了debug可是花了好幾個小時呢。