• 文章總列表
  • 統計分析
    • R SAS All
      R

      [R]散佈圖與相…

      2019-12-31

      R

      [R]Logis…

      2019-10-31

      R

      [SAS][R]…

      2019-09-27

      R

      [R]Chi-s…

      2019-09-19

      SAS

      [SAS] Ma…

      2026-09-08

      SAS

      [SAS] Ma…

      2026-01-21

      SAS

      [SAS]傾向分…

      2020-10-28

      SAS

      [SAS]Log…

      2020-06-10

      統計分析

      [SAS] Ma…

      2026-09-08

      統計分析

      [SAS] Ma…

      2026-01-21

      統計分析

      什麼是meta-…

      2024-11-05

      統計分析

      Test-ret…

      2024-06-07

  • SAS
    • SAS

      [SAS] Ma…

      2026-09-08

      SAS

      [SAS] Ma…

      2026-01-21

      SAS

      [SAS]傾向分…

      2020-10-28

      SAS

      [SAS]Log…

      2020-06-10

      SAS

      [SAS]迴歸分…

      2020-02-28

  • R
    • R

      [R]散佈圖與相…

      2019-12-31

      R

      [R]Logis…

      2019-10-31

      R

      [SAS][R]…

      2019-09-27

      R

      [R]Chi-s…

      2019-09-19

      R

      [SAS][R]…

      2019-07-08

  • 機器學習
    • 機器學習

      Unsuperv…

      2021-07-22

      機器學習

      Unsuperv…

      2021-07-12

      機器學習

      Unsuperv…

      2021-05-20

      機器學習

      Unsuperv…

      2021-05-12

      機器學習

      Matrix F…

      2021-04-30

  • 閱讀筆記
    • 閱讀筆記

      [閱讀心得 #2…

      2025-02-05

      閱讀筆記

      [閱讀心得#20…

      2024-10-25

      閱讀筆記

      [閱讀心得#19…

      2024-08-16

      閱讀筆記

      [閱讀心得#18…

      2024-05-10

      閱讀筆記

      [閱讀心得#17…

      2022-01-22

Wenwu's blog
wenwu's blog
  • 請我喝珍奶

Popular Posts

[R]散佈圖...

2019-12-31

[SAS]L...

2020-06-10

[SAS][...

2019-07-08

[R]Log...

2019-10-31

[SAS] ...

2020-01-22

[SAS]線...

2020-02-26

[SAS]存...

2019-12-18

[SAS]迴...

2020-02-28
SAS

[SAS] Macro Language 2: 內建macro,使用 SQL/DATA step 建立Macro variable

by wenwu 2026-09-08

好久不見! 很久沒上文章了,激勵自己朝第一百篇文章前進。不知道為甚麼最近的點閱暴增,原本月平均是一萬,現在每個月都兩萬多了。看來離百萬點閱不遠了。:.゚ヽ(*´∀`)ノ゚.:。

在上一篇中,提到基礎的macro language,本篇會提到

  1. SAS 內建的 Macro function
  2. 使用SQL 建立 Macro function
  3. 使用 DATA set 建立 macro function

SAS 內建的 Macro function

SAS 內建的macro function 並不會像SAS Base 一樣多,這邊簡單介紹幾個方法:

  1. %UPCASE 函數: 將字串轉換成大寫
    • 用途: 將 Macro 變數或字串值中的所有小寫字母轉換為大寫字母
%let my_string = Hello World!;
%let upper_string = %upcase(&my_string);
%put original: &my_string;
%put uppercase: &upper_string;

2. %SUBSTR 函數:擷取子字串

  • 用途: 從 Macro 變數的值中擷取指定長度的子字串,從指定位置開始。語法: %SUBSTR(string, start_position <, length>)

%let full_date = 20251215; 
/* 從第 5 個字元開始,取 4 個字元 (月份和日期) */ 
%let month_day = %substr(&full_date, 5, 4); 
/* 從第 1 個字元開始,取 4 個字元 (年份) */ 
%let year = %substr(&full_date, 1, 4); 

%put Date: &full_date; 
%put Month and Day: &month_day; 
%put Year: &year;

3. %SCAN 函數:依分隔符號擷取字詞

  • 用途: 根據指定的分隔符號(預設為空格)將 Macro 變數的值視為一系列字詞,並擷取第 n 個字詞。語法: %SCAN(string, n <, delimiters>)

%let product_list = Apple Banana Cherry; 
/* 擷取第2個字詞,使用空白作為分隔符號 */ 
%let third_item = %scan(&product_list, 2); 

%put List: &product_list; 
%put Third Item: &third_item;

4. %SYSFUNC 函數:在 Macro 程式中使用 DATA Step 函數

  • %SYSFUNC 是很好用的 macro 函數,有許多DATA Step 函數沒有在macro 函數中,我們可以使用 %SYSFUNC
  • 用途: 允許在 Macro 程式環境中執行幾乎所有的 SAS DATA Step 函數。這對於執行複雜的字串操作或日期/時間計算非常重要
  • 以下是取得今天的日期,以及格式化日期
/* 取得今天的 SAS 日期值 (DATA Step 函數 TODAY()) */ 
%let today_date_num = %sysfunc(today()); 
/* 將 SAS 日期值格式化為 YYYY-MM-DD (DATA Step 函數 PUTN()) */ 
%let formatted_date = %sysfunc(putn(&today_date_num, yymmdd10.)); 

%put Todays SAS Date Number: &today_date_num; 
%put Formatted Date: &formatted_date;i
  • 壓字串: 刪掉字串裡面的空白
%let x = AB C D; 
%put %sysfunc(compress(&x));
  • Macro function 裡面沒有Propcase 可以使用,但是可以藉著%SYSFUNC
%put %sysfunc(propcase(HAPPY)); 

  • 另外macro 不用使用引號,下面兩個的結果是一樣的
%put %scan(&syslast,2,.) 
%put %sysfunc(scan(&syslast,2,"."))

5. %SYSEVALF 函數:執行浮點數運算

  • 用途: 在 Macro 程式環境中執行浮點數(帶小數點的數字)的算術運算。由於標準 Macro Facility 只能處理整數,因此 %SYSEVALF 對於任何涉及小數的計算是必需的。
    %let pi = 3.14159;
    %let radius = 5.5;
    
    /* 計算圓面積: Pi * r^2 */
    %let area = %sysevalf(&pi * (&radius * &radius));
    
    %put Pi: &pi;
    %put Radius: &radius;
    %put Area of Circle: &area;
    

    6. %STR 函數:遮罩 (Mask) Special Symbols

    • 用途: 遮罩 Macro 程式中的特殊字元,如 &、%、;、=、<、>、(、) 等,使其不被 Macro 處理器解讀為程式碼的一部分,而是視為普通的文字字元。常用於定義包含特殊符號的 Macro 變數值。
      /* 正確範例: 使用 %STR 遮罩 '&' 符號 */
      %let correct_var = %str(data_A&B);
      %put Correct Variable Name: &correct_var;
      

      7. %NRSTR 函數:不解析和遮罩特殊符號

      • 用途: %NRSTR 是 Non-Resolving (不解析) 的 %STR 版本。它除了像 %STR 一樣遮罩特殊符號外,還能防止 Macro 變數在定義時被解析。常用於當您希望一個 Macro 變數的值本身包含另一個未定義的 Macro 引用時。
        /* 假設我們想要建立一個包含將來會定義的變數的字串 */
        %let future_var_ref = %nrstr(&project_name._list);
        %put Future Variable Reference: &future_var_ref;
        
        /* 稍後,我們定義 project_name */
        %let project_name = Report;
        
        /* 此時,&future_var_ref 的值已經被設定為 '&project_name._list',
           即使 &project_name 已經定義,&future_var_ref 也不會被解析為 'Report_list'。
           它會保持原始的不解析狀態。*/
        %put Final Check: &future_var_ref;
        

        使用SQL 建立 Macro variable

        除了%let 之外,還有其他建立 Macro variable 的方法。在 SAS 中使用 PROC SQL 建立 Macro 變數(透過 INTO 子句)是自動化報表的關鍵技術。它比傳統的 %LET 更強大,因為它可以直接從數據集中提取資訊。這能讓我們直接從資料表中擷取數值(如總金額、最大日期或清單)並存入變數中供後續使用。

        1. 建立單一 Macro 變數

        這是最基礎的用法,通常用於儲存「統計值」或「常數」。

        • 語法重點: SELECT 欄位 INTO :變數名稱 (注意冒號在變數名稱之前)。
        • 範例: 計算資料集中的總觀測數。
        proc sql noprint;
            select count(*) into :total_obs
            from sashelp.cars;
        quit;
        
        %put contains a total of &total_obs vehicles;
        

        2. 建立多個獨立的 Macro 變數

        如果想將多個欄位分別存入不同的變數,只需依序排列即可。

        • 範例: 取得馬力最強的車型名稱與其馬力值。
        proc sql noprint;
            select Make, Horsepower into :top_make, :top_hp
            from sashelp.cars
            having Horsepower = max(Horsepower);
        quit;
        
        %put The most powerful vehicle is &top_make, with a horsepower of &top_hp!;
        
        

        3. 建立「清單式」Macro 變數

        這是 PROC SQL 最強大的地方!它可以將一整欄的值合併成一個字串,中間用指定的分隔符號(如逗號)隔開。這在處理 WHERE ... IN (&list) 時非常有效。

        • 語法重點: SEPARATED BY '分隔符號'。
        • 範例: 取得所有車輛品牌清單,並用逗號隔開。
        proc sql noprint;
            select distinct Make into :make_list separated by ', '
            from sashelp.cars;
        quit;
        
        %put List: &make_list;
        

        4. 處理字串前後空格:TRIMMED

        在建立變數時,SQL 預設可能會保留欄位的原始長度(包含空白)。剛剛在第二點就多了許多的空白,使用 TRIMMED 可以自動去除空格,讓產出的變數更乾淨。

        • 語法: INTO :var_name trimmed
        • 範例:
        proc sql noprint;
            select distinct Origin into :country trimmed
            from sashelp.cars where Make='Audi';
        quit;
        
        %put The place of production is: [&country];  /* 使用中括號檢查是否有空白 */
        

        從 DATA Step 寫Macro variable :CALL SYMPUTX

        1. 為什麼不能在 data step 直接使用 %LET?

        如果你在Data Step 裡面用%let 的話,會發現你的 macro variable 是錯的,為什麼呢?

        • 靜態 vs. 動態: %LET 是在 Macro 處理階段(編譯時)執行的,它通常只能處理您「手寫」進去的內容。
        • 無法直接讀取資料: %LET 無法直接看到資料集(Data Set)內部的數值。如果您想根據資料集中某個特定觀測值(Observation)來決定變數內容,%LET 是做不到的。
        • 大量生成: 如果您有 100 個類別,想產生 100 個對應的 Macro 變數,手寫 100 個 %LET 非常不切實際。

        下面有一個錯誤的示範,下面的程式不管製造廠商(Make)是哪一個,出現的 foot 都是 foot = &make Does Not have a hybrid Car; 大家可以自己跑跑看,或是更換 make。最主要的原因就是在跑data step 和 macro 的時候,sas 會先處理 Macro,所以當我們還沒有 HybridFlag 的時候,就會執行 %let foot 這一段,因為沒有 HybridFlag這個數值, 後面的foot 先執行的話,會直接進到 else,所以不管放什麼make,foot 都會是 foot = &make Does Not have a hybrid Car;

        	%let make=Honda;
        	
        	data &make;
        		set sashelp.cars end=lastrow;
        			where upcase(Make)="%upcase(&make)";
        			retain HybridFlag;
        			if Type="Hybrid" then HybridFlag=1;
        			if lastrow then do;
        				if HybridFlag=1 then do;
        					%let foot = &make offers Hybrid Cars;
        				end;
        				else do;
        					%let foot = &make Does Not have a hybrid Car;
        				end;
        			end;
        	run;
        

        為了解決沒辦法在Data Step 中使用 %let ,我們使用 CALL SYSPUTX


        2. 在Data Step 中使用CALL SYMPUTX

        當我們在 DATA Step 處理資料時,如果發現某個數值很重要,想要「外帶」出去給後續程式使用,這時就要用 CALL SYMPUTX。

        • 語法: CALL SYMPUTX('Macro變數名稱', 資料項, '儲存位置');
        • 優點:
          1. 自動去除數值前後的空格(比舊版的 CALL SYMPUT 更聰明)。
          2. 自動將數值轉為字串,不會在 Log 出現轉換警告。

        3. 實戰範例:從資料中提取關鍵指標

        sashelp 中的dataset : class 有班上同學的資料,我們取第一個同學的名字出來

        data _null_;
            set sashelp.class;
            if _n_ = 1 then do;
                call symputx('first_student', Name);
            end;
        run;
        
        %put The first student is: &first_student;
        

        4. 進階技巧:動態批次建立變數

        這是 CALL SYMPUTX 最強大的地方:結合資料欄位來命名。

        • 情境: 我們想根據不同的產品類別(Type),分別建立對應的平均售價變數。
        proc means data=sashelp.cars nway noprint;
            class type;
            var msrp;
            output out=car_summary mean=avg_price;
        run;
        
        data _null_;
            set car_summary;
            call symputx(cats(type, '_price'), avg_price);
        run;
        
        %put The average selling price of a Sedan is: &Sedan_price;
        %put The average selling price of a SUV is: &SUV_price;
        

        今天就先講到這裡,預計下一篇是 macro 系列的最後一篇

        2026-09-08 0 comment
        0 FacebookTwitterPinterestEmail
        SAS

        [SAS] Macro Language 基礎內容

        by wenwu 2026-01-21

        好久沒有寫SAS的文章了,最近有機會去上SAS Macro Language 1: Essentials 的課程,想整理上課的一些筆記,也和大家分享一些SAS Macro 的內容。我本來就有在寫SAS Macro,但是從來沒有上過完整的課程。這個課程很精實,在兩天內把Macro 可能用到的基礎課程做了一個整理。我也藉著課程了解macro 的運行邏輯。

        What’s Macro is SAS

        首先來和大家分享什麼是SAS Macro,在寫R or Python 的時候,我們可以指定變數,比如,讓X指定是10

        X=10

        但是在SAS,不能直接寫 X=10 ,需要一些指定的符號來啟用macro。另外,在SAS裡面如果要寫 loop 迴圈的話,也需要Macro definition來寫,這部分可能無法在今天一起解釋。我們今天先介紹基本的macro variable

        SAS Macro 怎麼使用

        1. 我們需要用 % & 符號來啟動 Macro,這兩個符號也是 Macro trigger。當一段SAS BASE 程式裡面有 % & 的符號時,會先把 Macro variable 解開
        2. Macro 是使用文字,所以有很多時候不需要引號
        3. 在跑程式的時候,會先解 macro ,之後再跑 SAS base

        基本的Macro 寫法

        Put

        1. 需要 % 來啟動 put
        2. Put 是很簡單的macro 函數,可以直接寫到log上面
        3. 並且 %put 不需要引號
        4. 如果寫 NOTE、WARNING、ERROR 都會換顏色

        可以使用上面的方法,在寫判斷的時候跑出log,可以使用顏色來判斷

        %put hello;
        %put NOTE: hello, change color;
        %put WARNING: BLUE color for warning;
        %put ERROR: red color;

        使用 put 來展示

        1. %put &=name; %put &name;找name的內容是什麼
        2. %put <text>&name<text>; 印出一段文字
          %let name= Max;
          %put &=name;
          %put &name;
          %put My name is &name;

          使用 %let 來宣告 macro variable

          1. %let name=value;
            • value: macro 值
            • name: macro variable
            • 大小寫有差
            • 會自動刪除空白
            • 沒有數字,以text為主
            • 最多可以存 64 K
              %let type=Truck;
              %let hp=250;
              %let type= Sports ;
              %let origin=" Europe ";
              %let value=;
              %let sum=3+4;
              %let varlist=Make Model Type;
              
              %put &=type;
              %put &=hp;
              %put &=type;
              %put &=origin;
              %put &=value;
              %put &=sum;
              %put &=varlist;
              

              使用 & 來呼叫

              1. 能夠將macro variable 呼叫回來
              2. 如果放在文字裡面需要雙引號
                %put &=name;
                
                %let type=BMW;
                proc freq data=sashelp.cars;
                	table Model;
                	where Make="&type";
                run;
                

                使用 %symdel 刪除macro variable

                1. %symdel list of variable names;
                2. 使用%let 寫的macro variable 都是 global 的,要自己主動刪除,才會刪除 (之後會講到 global 和 local 的差別)
                  %symdel name hp type origin;
                  

                  其他的put 用法

                  1. 可以使用 %put _automatic_; 找到 SAS 裡面的 Automatic macro variable
                    • 可以利用 Automatic macro variable 來使用
                  2. 可以使用 %put _user_; 找到我們宣告的 macro variable

                    使用 options 來偵錯 SAS Macro Debugging

                    1. Options symbolgen;
                      • 巨集變數(&var)被展開成什麼值
                      • 巨集變數是不是抓錯、變數名稱是否拼錯
                    2. Options mlogic;
                      • Macro 程式的邏輯流程:IF/ELSE、DO 循環、條件判斷
                      • Macro 的控制流程是否如預期
                    3. Options mprint;
                      • Macro 展開後,實際送到 SAS compiler 的 DATA step / PROC 程式碼
                      • 確認巨集產生的程式碼是否正確
                    4. option mcompilenote = ALL|NONE;
                      • 檢查macro 錯誤

                    還沒講到 macro definition,偵錯 的部分就大家可以先試試看怎麼使用

                    其他要注意的: 在使用 macro 的時候,macro variable 後面的小數點會被吃掉

                    1. 使用的時機是文字必須黏在macro variable之後的時候
                    2. 如果需要小數點,可以使用兩個小數點,一個會被吃掉
                    • %let type=Truck
                    • “&type.s" ⇒ Trucks

                      今天就介紹最基本的 macro variable,之後再寫如何用 SQL/ data set 建立 macro variable

                      2026-01-21 0 comment
                      1 FacebookTwitterPinterestEmail
                      工作心得分享

                      ccClub 讀書會推薦,免費學python

                      by wenwu 2025-08-03

                      我在今年的三月報名了 ccClub 讀書會 的課程,並且在七月完成為期十八周的課程內容還有期末專題了。雖然標題講到「免費」,事實上是需要繳保證金的。保證金是2000塊,只要完成14/20 題以上的指定作業,跟完成期末的專題,就能夠拿回保證金啦

                      起初在2022年的時候,就聽到朋友介紹,他因這想學程式,而開始ccClub 上的課程。他上完課後,還是不斷地跟我分享,覺得只要繳保證金,就可以擁有豐富的資源上課,真的太划算了。而且就算沒有達到退費標準,還是覺得這些內容值2000塊以上。

                      我今年初也開始想學python,於是我報名了 2025的春季班,從三月開始到七月,為期十八周的課程,我也在上週完成了期末的專題展示。就讓我們來介紹一下,ccClub的課程吧

                      什麼是ccClub讀書會?

                      Coding & Co-working Club (ccClub)成立於2016年,由一群國立臺灣大學學生及校友組成,成員涵蓋電機資訊學院、理學院、社會科學院、管理學院、生農學院等。我們認為在這人工智慧日益發達的世代,程式設計不再只是特定領域的工具,而是應該成為任何領域的人都能運用的第二專長。

                      ccClub團隊的理念是希望能用淺顯易懂、循序漸進的方式,帶領新手一步步跨入程式設計的世界。因此團隊彙集了軟體工程師的實務經驗,同時蒐羅各領域新手在學習程式設計時遇到的痛點,針對細節做教學的改善與引導,希望能降學習門檻,讓所有充滿熱情的新手都能夠迅速且扎實的開啟程式設計之路。(來自網站內容)

                      為什麼選擇學 Python?

                      Python 具有簡單易學、功能強大的特色,比起其他程式語言,更適合作為初學者學習的第一個程式語言。在許多新興領域中都可以看到Python的應用,諸如:資料分析、機器學習、網站設計等等。像是美國批踢踢Reddit、以前做分組報告很依賴的Dropbox、號稱中國最優優質社群但差點消失的知乎、你每天發限時動態的Instagram,都主要是由Python 來寫的! 看了這些優點,如果你還在猶豫要怎麼入門程式語言,就選擇Python吧!(來自網站內容)

                      課程怎麼進行呢?

                      ccClub 的課程主要都是線上進行,在每週三晚上有直播的課程。在網站裡,可以清楚地看到每週的進度,基本上你就算每週無法上線也沒關係,因為課程在臉書社團上直播,可以找時間自己補課。

                      而網站上的每週課程大綱如下:

                      1. 第 1~4 週:基礎 Python 語法
                        • 於 FB 社團直播(內容為資源介紹),結束有助教時間協助安裝及設定環境,
                        • 於 FB 社團直播(內容為學習策略),結束有助教時間協助申請 discord 帳號及 discord 使用
                      2. 第 5~8 週:Python 補充與演練
                        • 每週三 20:00 於 FB 社團直播(內容為課程補充及回答學員提問)
                        • 每週 2 次助教諮詢,讓助教幫你解惑(ccClub 的 discord 頻道)
                      3. 第 9~11 週:網路爬蟲教學、進階內容補充
                        • 每週三 20:00 於 FB 社團直播(內容為課程補充及回答學員提問)
                        • 每週 2 次助教諮詢,讓助教幫你解惑(在 ccClub 的 discord 頻道)
                        • 第 10 週有一次期末專案方向指引
                      4. 第 11~18 週:分組專案實作
                        • 利用前 11 週所學實際動手做出屬於自己的期末專案
                        • 每週 2 次助教專案諮詢
                        • 歷屆學員成果

                      除了完整的課綱,還有實用的網站頁面

                      除了剛剛提到的完整課綱加上線上課,ccClub 的頁面也整理的非常清楚.搭配上面的內容之外,在網頁裡面可以看到每一週需要自學的進度,下面的圖中是ccClub 的網站裡面,week5 的自學內容。前四週的內容可能比較多,需要花一些時間認真閱讀。

                      我覺得除了自學之外,再加上直播時助教的提醒很不錯。所有的助教都是之前ccClub的學生,所以他們都知道學程式時會遇到的困難。記得在第一週的直播中,助教就提醒,若是想要從頭學起,一週可能需要花到7-8小時的時間。 我本身會寫一些程式(R、SAS)所以不算是一個寫程式的新手。但是要學習一項新的程式還是需要花一些時間。

                      除了每週的課程,還有ccClub 的judge 系統,你可以依照讀書會建議的進度每週練習題目。我自己大概一週花4-5小時自學,包含上judge 系統上寫練習題跟作業。在寫專題前,我完成的Judge題目大約是90題。

                      期末專題

                      我覺得這是一個很不錯的機會,可以藉著ccClub的機會,找到志同道合的組員,一起完成一項期末專題。簡單解釋一下,我們這組的期末專題。我們原想想要做kkdays 和 klook 的比價,但是後來覺得他們的內容太多了,所以專注在 esim 的比價分析。

                      主要使用的網站有四個:威訊、Joytel、DJB、Asiayo

                      主要比價的國家:日本、韓國

                      我們爬了四個網站上,日本和韓國的所有方案。依照常見的方案有:每日型、總量型、吃到飽不降速、降速吃到飽

                      我們專題主要的步驟可以分為:

                      1. 爬蟲(使用python): 將不同四個網站的內容,爬蟲下來,整理成csv檔案
                      2. 資料清理(使用python):依照之後資料的呈現,將四個網站的資料,整理成一份
                      3. 數據分析(使用python):我們希望能依照現有的資料,做一個視覺畫得呈現,將已有的資料、呈現成折線圖,跟熱力圖,可以簡單的知道哪一間有最便宜的方案。
                      4. 互動式資料呈現(使用tableau):最後使用tableau ,讓使用者可以依照需求,找到最適合的方案

                      這是我們的專題報告影片: 如果有興趣的話,可以點進去看看。

                      助教諮詢

                      其實我們花蠻多時間在討論專題的內容的。並且每一週做完進度後,都會在彼此討論我們遇到的困難。但是我們對於python都是初學,有時候討論時也會卡關,就很需要助教諮詢的時間。

                      我們原先卡關的地方,是無法爬kkdays, Klook 上的內容(這部分剛好不是我做的)。經過助教諮詢後,助教引導我們該如何解決(雖然最後還是沒有成功)。但是助教也在最後給我們一個不錯的建議:就是可以使用互動式的視覺化呈現。

                      原本在這堂課程中,只以為會學python而已。但是python 只是我們想要完成一個期末專題的工具,最重要的是,我們要如何『使用python 來解決,我們生活中的困難』。

                      當初在尋找我們的主題時,大家都覺得每次出國時,esim 的方案眼花撩亂,所以我們做這個報告的動機是『藉著python 節省大家尋找最便宜(或最優惠)的esim 方案』

                      所以最後除了python 之外,我們也做了一個互動式視覺化的呈現:

                      1. 總表,依照使用的天數,可以一目瞭然的找到最適合的方案
                      2. 長條圖,依照使用的天數和國家,可以視覺化的呈現價格的高低

                      總結

                      整理來說,我蠻推薦 ccClub 的課程的,如果你正想學python,或是想入門學寫程式,剛好需要有人督促(可以拿回保證金2000塊的督促)。也可以藉著這堂課,認識一些想學程式的朋友。

                      ccClub的完善系統,再加上助教的補充,我覺得對一個初學程式的人,算是非常的友善。但是你如果沒有任何程式基礎,那我會建議你再多花一些時間下功夫,畢竟學一項新的事物真的需要一點時間,但是完成了一定很有成就感。

                      最後,我們的專題得到特優,我們的程式部分可能沒有比別人多,但是可以從眾多的隊伍中脫穎而出也是很開心,希望大家看完有動力學習新事物。

                      今天就到這裡嘍

                      2025-08-03 0 comment
                      0 FacebookTwitterPinterestEmail
                      閱讀筆記

                      [閱讀心得 #21]你願意,人生就會值得

                      by wenwu 2025-02-05

                      蔡康永真的很厲害,他出的每一本書都是暢銷書。
                      這次也是,情商書的第三本,一樣帶給我們新的視野,告訴我們能夠放下別人對我們、或是我們對自己的無聊要求。

                      我其實覺得這本書的理念,和我 ig 內容非常接近「統計師的理想生活」,過上理想生活的條件,不是百萬富翁可以揮霍,而是心理富足可以把事情看的雲淡風輕。

                      如果你是一個老闆,手下可能有很多員工,但是你要管的事就更多了。要雲淡風輕可能不容易。但是不管你是誰,你的收入多少,只要管好你自己的事,就像蔡康永在書裡面提到的:「關我什麼事」、「關你什麼事」。很多事情都可以輕輕的放下、拍拍屁股走了,不留下一片雲彩。

                      不一定要抵達終點

                      想靠近終點,就不要讓自己會累到討厭那個終點。 如果累到討厭那個終點,就放過自己,動手把那個種點移近一點

                      在我們的人生有很多的「點」,不管是終點、起點。考大考、出國讀書、找到工作、加薪、升官。這些終點到底是誰定出來的呢?

                      活在千萬人中,我們都需要自己的立足點,要知道自己生存的意義在哪裡?但是這些真的是我們想要的嗎?當你達到了目標,真的快樂嗎?

                      應該把我們的生活就當作這個「目標」,我們的生活就應該是「目的」。

                      書中提到一位馬拉松愛好者,每次的跑都是他的目的,每次要突破的就是他自己的目標。
                      康永哥問:「你不是每次都沒跑到終點嗎?」
                      這位馬拉松愛好者說:「終點是他們訂的,我已經達到我每次的目標了」
                      蔡康永說:「那你一個人跑就好了啊,參加千人跑步幹嘛?」
                      馬拉松愛好者:「你每天活在千萬人之中,你不也是設了自己的終點嗎?」


                      我們都活在自己的目標中,但這目標應該成為我們的生活。
                      如果達不到,就把終點移靠近一點,不就好了。

                      生活的本質就是這樣,我們有我們的目標,但請保持彈性。
                      只要靠近目標就很好了,不一定要達到終點。

                      理想生活也是,你一定有你想像的生活。很多人跟我說「我要有一輩子花不完的錢」。這當然是一個還沒開始理想生活的人說的。因為當你開始你的理想生活,你就會知道,這樣的目標太誇大了,這世界沒幾個人達得到。

                      當你開始理想生活後,你就會慢慢思考「真實」需要什麼,跟你實際的「能力」可以帶你到哪裡?
                      慢慢地,你會有屬於你自己的理想生活。你的生活開始知道平衡,也知道該如何設目標。你知道你所有的精力該花在哪裡?你的錢該怎麼幫你達到理想生活。

                      保持彈性,不只讓我們可以走更遠,更重要的是,能夠認識自己,知道如何過生活。

                      對自己有感情,才可能做自己

                      我們在生活中,忙著賺錢、忙著工作、還要照顧家人、跟朋友聯繫。忙了一輩子,我們都為著別人。很多人到退休後,就不知道怎麼跟自己相處了。

                      不知道怎麼跟自己相處?不知道自己喜歡什麼?

                      我們在拿到薪水的時候,會自動分出1/5的薪水來投資。但是我們的時間呢?只有睡覺的時候留給自己嗎?

                      當我們把心力都拿來「派上用場時」,我們怎麼還會有耐心或意願,做一些沒用的是:「跟自己變熟」、「對自己了解」、「跟自己相處」、「跟自己戀愛」

                      我們剛認識一個朋友,一定會花上心力,一步一步的認識對方。
                      那我們自己呢?我們是否可以每天有一個小時,好好的認識自己,讓自己「不派上用場」。在那個時間,好好的發呆、散步、旅行、好好的認識自己

                      我自己在30歲之前,才發現我是個高敏感。我做事動作很快,而且我的mbti的理性T和感性F 象限是T。我以為我自己沒什麼情感,很多時候我都現用我的理性來處理事情。
                      但是到了一個時間點,我的感情爆發,我常常不認識我自己的情緒,我以前以為的我,好像不認識了。
                      在情緒爆發的當下,我通常無法做出什麼反應。我和自己相處久了,才知道,我需要好好的獨處,才能知道我當下的情緒是什麼?不是靠著別人,而是好好的靜下來,我才能知道我自己的反應是什麼?
                      是不是很有趣,有時候我連自己的情緒也不知道,我需要花時間才知道自己當時的感覺

                      把時間留給自己吧! 好好知道自己的感覺是什麼,才有可能做自己,才可能對自己好。只把自己當有用的人,對自己就太無情了。

                      想達到你的理想生活嗎?

                      幸福的根源,就是摸索出「自己」

                      蔡康永在書裡提到,我們總是把「自言自語」、「自問自答」這種行為描述成怪怪的人,但是有思考習慣的人,本來就會不斷地自言自語、自問自答。

                      思考,就是跟我們自己開會 除了在思考時,體會到自己的存在,我們在深入感受各種事物時,也一定會時「拉著」自己去感受,不然根本無從代入

                      情商的建議是提醒我們「對自己好」「愛自己」「做自己」。幾乎每個人都同意。但是當你不認識自己時,怎麼對自己好?

                      今天,好好的「陪自己」吧!可以利用下面的方法,幫助你更認識自己

                      5 種方法,幫助你更認識自己

                      我們都知道要「對自己好」、「愛自己」,但如果連自己真正的想法、需求、界線都不清楚,又怎麼能好好愛自己?

                      以下五個方法,可以幫助我們更認識自己:

                      1. 記錄情緒變化,找到真正的自己

                      📖 每日寫下「今天讓我最開心/最煩躁的事」

                      當你開始關注自己的情緒,你會發現某些模式——什麼讓你快樂?什麼讓你焦慮?這些情緒背後,其實藏著你的價值觀與真正的需求。

                      2. 嘗試不同事物,探索自己的喜好

                      🎨 學習新技能、參與不同活動、挑戰未嘗試的事

                      許多人覺得自己「沒興趣、沒熱情」,其實只是沒給自己機會去發現。透過不斷嘗試,你才能知道自己真正喜歡什麼、不喜歡什麼。

                      3. 與自己對話,練習內在獨白

                      💭 每天花 5 分鐘,問自己 3 個問題

                      • 今天最值得感謝的事是什麼?
                      • 我最近最想達成的目標是什麼?
                      • 我目前的生活有什麼讓我感到不滿意的地方?

                      這些問題能幫助你更清楚內心的聲音,不再只是隨波逐流。

                      4. 找到你的「高能時刻」,善用優勢

                      ⏳ 觀察一天中,什麼時候你的專注力最強?什麼時候最有創造力?

                      有些人早上精神最好,有些人晚上效率最高。找到你的「黃金時間」,就能更有效地安排生活,避免不必要的內耗。

                      5. 接受自己,不評判不比較

                      💡 問問自己:「這是我的選擇,還是社會的期待?」

                      很多人無法真正做自己,因為太在意別人的眼光。當你開始放下比較,學會接受自己,你才真正擁有自由。

                      認識自己,是一輩子的課題。當你愈了解自己,就愈能活得自在、快樂,找到屬於自己的「理想生活」。

                      2025-02-05 0 comment
                      0 FacebookTwitterPinterestEmail
                      工作心得分享

                      理想生活,該長怎麼樣子?

                      by wenwu 2025-01-25

                      在社群媒體的洪流中,我們經常被推擠著朝某些「標準答案」前進:
                      「30歲前,存到第一桶金!」
                      「35歲前,實現財富自由!」
                      「40歲前,環遊世界!」

                      無數的文章和影片在告訴我們,這些才是值得追求的人生目標。於是,我們也開始計算著銀行裡的數字,盤算著每一步該如何縮短到終點的距離。

                      但等到真的實現了這些目標,我們會快樂嗎?

                      達到「屬世的價值觀」,卻不快樂

                      曾幾何時,我也以這些標準來定義自己的價值:越早成功越好,越多財富越好。但當我真的接近那些社會認為「成功」的里程碑時,我卻感到空虛。因為我逐漸發現,這些目標並不是我真正想要的東西,而是屬世的價值觀灌輸給我的「模版」。

                      這樣的價值觀就像一雙別人替我們挑選的鞋子,看似光鮮亮麗,卻讓我們每走一步都不自在。它要求我們達到某種外在的成功,但忽略了我們內心的渴望和需求。

                      那麼,理想生活該是什麼樣子?

                      理想生活或許沒有一個單一的答案,因為它不是一份清單,也不是可以量化的目標。對我來說,理想生活應該是一種平衡,是內心的滿足和真實的快樂。

                      1. 理想生活是與自己和解

                      學會認識自己,接納自己的不足,擁抱自己的選擇。不是為了迎合他人的期待,而是活出最真實的樣貌。唯有好好的認識自己,才能知道自己要的是什麼

                      2. 理想生活是找到自己的節奏

                      生活的步調不需要和別人一樣。我們可以緩慢地欣賞沿途的風景,也可以在某些時刻加速,只要那是我們內心渴望的節奏。

                      3. 理想生活是珍惜當下

                      不再一味地追逐未來的目標,而是學會在每一天的點滴中找到幸福。也許是一次溫暖的晚餐,一場悠閒的散步,或是與摯愛的家人朋友共度的時光。

                      4. 理想生活是忠於自己的價值觀

                      拋開屬世的標準,找到屬於自己的核心價值觀。這樣,即使有一天回首,我們也不會為討好別人而後悔。

                      理想生活,從來都不是別人定義的標準答案,而是我們內心深處的選擇。當我們停止與他人比較,重新傾聽自己的心聲,或許我們就會發現,真正的快樂其實一直都在我們的掌握之中。

                      你心中的理想生活,又會是什麼樣子呢?

                      開始顯化你的理想生活

                      每個人心中都有一個「理想生活」的模樣,但我們卻常常被別人的標準影響,忘記去問自己:「我真正想要的生活是什麼?」

                      理想生活應該來自於「自己的理想」,不是來自社會的期待、別人的比較或那些看似光鮮的模板。它可以很大,也可以很小,但它一定要屬於你。從你想和誰吃飯、想住在哪些地方,到你希望身邊有哪些人一起同行,這些看似簡單的細節,但卻代表了你這個人,也構成了你最真實的樣子。

                      理想生活,從「清晰」開始

                      想要顯化理想生活,第一步就是讓自己的理想變得具體、可見。試著問自己以下幾個問題,並且寫下答案:

                      1. 你想住在哪裡?

                      你喜歡住在城市,還是喜歡郊區。喜歡熱鬧的人群、還是喜歡安靜地環境?哪種環境能讓你感到放鬆、安心?

                      2. 你想和誰共度時光?

                      是支持你的家人、志同道合的朋友,還是充滿靈感的夥伴?哪些人會讓你在生活中感到充滿能量?

                      3. 你想過怎樣的一天?

                      早晨醒來時,你希望看到什麼樣的風景?一天的開始是安靜的閱讀,還是充滿活力的運動?你的工作與生活的比例如何分配?

                      4. 你的價值觀是什麼?

                      是自由、創造力、成長,還是陪伴與關愛?你的理想生活應該圍繞著這些價值觀展開,而不是偏離它們。

                      顯化理想生活的步驟

                      當你清楚知道自己要什麼後,就可以開始一步一步將它實現。以下是幾個簡單的步驟,幫助你將理想化為現實:

                      1. 把目標寫下來

                      拿起筆,把你理想生活的細節一一記錄下來。當你的目標被具象化後,實現它的機率就會大大提升。

                      2. 拆解成可行的小步驟

                      如果你想搬到理想的城市,第一步可以是搜尋當地的租屋資訊或了解生活成本。如果你想改變職業方向,第一步可以是學習新技能或認識相關領域的人。

                      3. 行動,從小處著手

                      即使每次只前進一小步,也比停滯不前來得有意義。或許你現在無法立刻搬到夢想的地方,但你可以開始創造讓自己更自在的空間。

                      4. 保持彈性與耐心

                      顯化理想生活的過程中,可能會遇到挑戰或挫折。這時候記得提醒自己:改變需要時間,偶爾的彎路並不代表失敗,而是通往夢想的必經之路。

                      讓生活成為你的理想樣子

                      顯化理想生活並不需要一步到位,而是從每一天的小選擇開始。當你選擇為自己煮一頓喜歡的餐點、花時間陪伴愛的人,或是將更多注意力放在自己真正熱愛的事物上,你就已經在創造屬於你的理想生活了。

                      理想生活不是一個遙不可及的夢,而是由一個個具體的行動堆疊起來的現實。現在,就開始顯化你的理想生活吧!用你的筆,寫下第一步,用你的心,走向真正屬於你的幸福。

                      現在就開始你的理想生活

                      說了這麼多,還沒有開始行動的話,這些都只是講講的而已。想和大家分享一些我達到理想生活的過程。

                      如果想要過上理想生活,我覺得理財是很重要的。當我們沒有錢就無法支撐我們的生活,但是就我們這一點微薄的薪水,要怎麼理財?

                      雖然薪水少,但是基本的理財觀念要有。我雖然從高中時就開始記帳,至今有超過15年的記帳經歷,但是很多的理財知識,都是我在工作後才開始理解的。

                      1. 信用卡只要準時還錢,就不會是壞東西

                      在我當學生的時候,很害怕使用信用卡,深怕一不小心沒有使用好,就會陷入負債的坑裡。但是我現在明白信用卡的好處:

                      當我們出社會之後,很需要信用卡來累積信用。有一天我們想要買房子的時候,不可能拿出現金購入房子,而是需要良好的信用分數來貸款。如果信用分數不足,貸款的利率可能會變得很高,這會讓未來的經濟壓力更大。

                      如果有能力負擔的話,信用卡其實是一個非常方便的工具,例如累積回饋點數、拿到消費優惠等。當然,如果沒有辦法負擔,就需要節制,避免過度消費。記住最關鍵的一點:準時繳費,避免利息的侵蝕。

                      2. 有不懂的就去學,即使賺得不多,該有的理財知識要早點知道

                      不管是學生或是社會新鮮人,可能都覺得自己手上的錢不多,理財好像還離得很遠。但是這些知識卻是未來財富累積的基礎,越早掌握越有優勢。

                      例如學會區分必要花費和想要花費,了解基本的存錢技巧(如50/30/20法則:50%必要支出、30%彈性支出、20%存錢)。再進一步,去學習投資的基礎,像是什麼是股市?什麼是複利?怎麼選擇低風險的基金?

                      現在的資訊這麼多,網路上有免費的理財文章、影片,甚至完整的線上課程。只要願意學習,門檻其實沒有想像中高。對我來說,理財的知識就像健康一樣:如果不懂,未來可能要付出更大的代價。

                      3. 投資最好的時間是十年前,再來是現在

                      剛知道投資的時候,我其實有點害怕,覺得這件事情好像很專業,需要很多錢才做得到。後來我才發現,投資並不一定需要一大筆資金,反而是早開始、用時間去累積才最重要。

                      比如每月投資少量金額到ETF,雖然看起來一開始金額很小,但靠著複利的威力,幾年後就能看到驚人的增長。假設每月投資3000元,年化收益率5%,20年後就能累積超過120萬。

                      另外,投資也讓我學會與市場波動和平共處。不是每一次投資都會有立刻的回報,但只要保持耐心、選擇穩健的標的,就能看到長期的成長。現在的我比剛開始時更加自信,因為我知道,投資是讓理想生活變為現實的重要工具。

                      4. 建構好自己的理財系統,接下來只用坐享其成

                      在學習和嘗試了各種理財方法之後,我發現建立一個簡單、可執行的理財系統是關鍵。這個系統幫助我自動化存錢、投資,讓理財變成一件「不用時刻操心」的事情:

                      • 設定自動轉帳:每月薪水進帳後,會自動分配到三個帳戶——一個用來儲蓄,一個用來投資,另一個用來支付生活開銷。

                      • 選擇穩定的投資標的:例如指數型基金或ETF,讓我不需要每天盯著股市,也能享受市場的成長收益。

                      • 定期檢視目標:每半年或一年檢查一次自己的理財進度,看是否需要調整目標或策略。

                      當你的理財系統運轉良好後,生活會變得更輕鬆,因為你知道自己的金錢正在為理想生活服務,而不是被金錢牽著走。

                      理財不僅僅是存錢或投資,更是一種生活態度。當我們學會管理自己的財務,才有能力掌控生活的方向。理想生活不需要等到「有錢之後」才開始,而是從現在開始用正確的方式對待金錢,逐步實現你的目標。

                      2025-01-25 0 comment
                      0 FacebookTwitterPinterestEmail
                      工作心得分享

                      多益330 → 多益785 多益成績棕色到藍色證書

                      by wenwu 2025-01-14

                      上個月花了一點時間考了第三次的多益,想趁著還有印象的時後來分享備考的心得,還有這十年間英文如何進步的。今天的內容針對多益的考試會少一點,主要是這十年來學英文的心路歷程。對我來說給我一本書讓我坐下來學英文,可能吸收得不好。但是有意識的讓自己有英文的興趣,以及能開始講英文對我來說比分數都還重要。

                      先講一下我考過的三次多益分數

                      時間總分聽力閱讀
                      2014 大三330不可考不可考
                      2018/01 碩二635370265
                      2024/12785435350

                      大學直接裸考多益

                      多益的總成績從330 → 785 聽起來很厲害,但是也是花了十年的時間
                      記得大學的時候,英文真的爛到不行,第一次的多益考試,其實是應付學校的英文門檻,當時淡江畢業需要達到450的成績。
                      我當時直接真的對英文的興致缺缺,只覺得讀數學時用到的英文看得懂就好了。
                      所以當時是抱著「我應該就考不到450」,直接上場裸考。
                      有考過多益都知道,其實練習考題非常重要,熟悉考題的題型,也可以幫助自己上場時更上手。
                      所以當時考試時,我一次練題也沒有就上場了,而且考到最後,直接不耐煩開始猜題。心裡想考2個小時真的太折磨。

                      但是在大學時,是遇到不少的英文上的挫折。像是

                      1. 大二(2013)時上了大學必修的英文課,有一次被老師要求站起來讀課文,我其實看不太懂,也隨便念。老師說你「聽你讀,就知道你連內容都無法理解」。
                      2. 非常興奮的到菲律賓(2014)當海外志工,發現自己的英文真的太不順了。跟菲律賓的小朋友說話也很有障礙。當時使用的對話,都非常簡單。我很多都聽得懂,但是英文卡在頭腦跟嘴裡都講不出來。
                      3. 後來海外志工還去了第二個國家(2015),跟英語非常好的菲律賓不同,尼泊爾的孩子英文沒有這麼流利。所以經過一年的時間,加上自己英文的進步,這次海外志工中,可以講說一些對話,實際上有自信一些。

                      研究所多益門檻 大量看影集 多益成績進步到600以上

                      有點忘記為何2018年考第二次多益,因為我印象中也是只練了幾次,就直接上場考試了。
                      但是因為在大學時感到自己的英文能力受限,所以有意識的增加了一些自己的英文能力。

                      當時,做的事情比較像是:

                      1. 看英文影集,包含中英雙字幕。我在大四到碩二(2016-2018)看完了一整部TBBT 生活大爆炸。 不得不說,我覺得多聽生活上的英文,比看紙本讀英文更有效果。當時靠著聽影集學會了許多看課本無法學下去的單字。當單字量增加之後,聽英文也覺得容易許多。
                      2. 因為大學時,兩次的海外志工讓我感受到英文不好的受限。所以我也在生活中增加了許多「思考」講英文的方法。因為聽了許多影集的對話,也幫助我在生活中「多思考英文」

                      老實說,光看影集增強英文能力,我大約在碩一上的時候就感受到了。我大量看影集的時間點大約是大四。碩一時考了一場全年級都需要考的入學英文考試,我當時的成績有超過60,這在大學時不會發生XD。所以我初步判斷當時看影集就讓我的英文進步不少。

                      研究所時怎麼增進自己的英文

                      當時有意識到需要再加強自己的英文,除了出國能夠和外國人對話之外,我們教會也出現一些外國人。而且不是一兩次出現,是在中央讀書的外籍生。有一對印度夫妻出現在我們聚會的區裡,我看到在他們聚會時,需要有人全程翻譯,這也讓我見識到,原來英文好一點就可以幫忙翻譯。
                      而且這不是偶而才會有的事,因為這對印度夫妻每週都會出現。並且聖經裡的用詞也蠻難的,所以更需要花時間進修。

                      所以當時我做了幾件事,增進自己的英文:

                      1. 剛好是研究所時期,老師鼓勵我們要開始讀原文書。所以當時的第一個挑戰是讀英文原文書。
                      2. 再來,英文對教會的英文翻譯服事有點負擔,所以我開始看英文版的晨興聖言。一開始蠻吃力的,需要有中文對照才看得懂。
                      3. 不只有印度夫婦在我們的聚會場所。有一次印度的弟兄們來到我們教會,我們的負責人鼓勵研究生要英文申言(英文分享)。於是我就嘗試了第一次的英文申言。 不過要理解內容也是有點困難,所以我幾乎是直接抄了晨興聖言上面的內容,直接分享。
                      4. 升到碩二的暑假,我還挑戰了一件事,就是到印度傳福音。所以練習英文的機會又來了。我努力練習日常用語,幫助自己能跟外國人對話,並且還要傳福音。

                      經過大量看影集進步英文,再加上在日常中在我的教會生活中也可以使用英文,當時算是「敢」跟外國人講話了。但老實說,還是有很多內容聽不懂,所以進步空間還很大。

                      碩二時,因為畢業門檻考了第二次的多益,我印象中的門檻是600分。而且我當時大約知道自己的英文進步不少,所以沒有很擔心這次的考試。也因為第一次考多益讓我知道需要練習考題。當時跟朋友借了一本多益模擬考題,練了幾次就去考了,而且算是滿意635這個成績,知道我自己的英文已經進步不少了。

                      申請交換學生

                      在讀書時,增進自己的英文能力,就是為了完成一個夢想「出國讀書」。但事實上,一直到研究所讀完書,我都無法完成這個挑戰。

                      主因:英文不夠好,所以無法申請到外國學校。但是我還是不死心,覺得我有機會,就去試試看。

                      碩一的時候我申請交換(2016),因為當時只看大學成績,所以我就申請上校內的名額,申請到「夏威夷的學校」。但是當時夏威夷大學的多益門檻是700,此時還沒有考第二次多益的成績,覺得挺困難的。外加上,我可能要完成我研究所的研究,才方便出國,所以放棄了申請。

                      不過現在看看,當時應該可以拼拼看700分,應該不會太難才對。

                      到碩二時我一樣再申請一次。在座談會,國際部的老師說「有很多的歐洲學校不看英文門檻」。我知道自己可能沒有錢去歐洲,但是這提供了我一個靈感,為何我不試試看馬來西亞。

                      這個地點剛好符合我的要求:

                      第一:我非常怕冷,我想去的地方是熱帶。

                      第二:這個地方不看英文門檻,並且中文也可以通,還可以在學校講英文。

                      第三:我沒有家裡的金援,東南亞我負擔得起。

                      所以我就在口試完的下個學期後,到馬來西亞交換

                      海外交換讀書

                      在馬來西亞交換,是我人生中非常精彩的一年。這是我完成學業後,工作之前給自己的假期。我不只因為國際生的身份認識了很多外國朋友,還去了很多東南亞知名的旅遊景點,在當地的教會生活,也看見很多不同的面向。我在短短的半年內去了20個召會,這機會可不是人人都有。

                      雖然馬來西亞對我來說講中文也可以通,但是我做了幾件事來push自己:

                      1. 這半年只待在英文聚會區,只能聽全英文的分享。
                      2. 每天早上晨興讀的內容,我也只讀英文版本。我每天晚上需要先預讀,把所有不會唸的單子等等的都練習過,隔天早上才能夠晨興。

                      這兩件事情,就讓我每天有得忙了。雖然交換生沒什麼課,但是我很喜歡當時的生活。我給自己半年的時間,完全不用思考自己的未來,每天就是簡單的過日子,跟朋友出去玩,讀讀英文。

                      可以說這半年過的很快樂,而且英文也慢慢進步,不過當時還是鬧了幾個笑話。

                      我記得我跟當地的朋友出門吃飯,我看著菜單上的選項想了很久,不知道該吃雞肉還是牛肉。
                      結果我的朋友看著我,以為我看不懂菜單,對我說「chicken 是雞肉,beef是牛肉」。
                      我才發現,經過五年的時間,我的英文可能有大幅的進步了,但是還是會對講英文有些卻步。
                      並且有些人可能還是覺得你beef都看不懂XD

                      和外國人工作

                      蠻幸運的,我還沒有什麼自信可以用英文工作,但是我的第一份工作有一位外國同事。這外國同事就坐在我的後面,並且第一天我就主動跟他講英文。

                      這時候的我算是「敢和外國人講話了,而且可以表達80%的生活用語」。結果不到幾天的時間,我就發現我的外國同事中文超級好,但是還是願意跟我說英文。

                      因為是工作的夥伴,我開始需要用英文表達,這樣溝通會比中文簡單。所以我需要把我做的工作內容,用英文跟外國同事溝通。

                      將近三年的時間,藉著跟這位同事溝通,我的英文也慢慢好起來。我們溝通的內容可能不全是工作,有時候是很日常的對話,藉著這樣的對話,我的英文也慢慢的進步。

                      全英面試

                      我必須承認,我的外國同事在我的英文進步過程中,扮演了極為重要的角色。最重要的是每天的講,讓我能夠突破心理的障礙。並且我在尋找下一份的工作時,外國同事也針對我準備的英文面試,提供了很棒的建議:

                      1. 對話的結束必須要肯定自己的內容,並給出一個明確的結束。不然有時候我會吱吱嗚嗚的,然後弱弱的收尾,他說這樣會讓對方覺得你話還沒講完。
                      2. 其實你的英文已經夠好,可以跟對方溝通了。對方可能也不是英文為母語的人,他也很努力的用英文跟你溝通。

                      經過同事的指點之後,我也順利完成兩場的全英面試,得到了夢想中的工作。

                      蔡康永有一句有名的話「18歲覺得英文難,放棄英文,28歲出現一個很棒但要會英文的工作,你只好說「我不會耶」。」我確實18歲時不會講英文,但經過十年的時間,27歲時剛好出現一份喜歡的全英工作,而經過這十年的努力,我終於可以說:「我可以」。

                      讓自己開口講英文的思維

                      以下是我對自己在這三年中,英文口說能力提升的轉變過程與相關想法的整理。這個想法,改變了說英文的態度:

                      1. 有看我的網站都知道,我是理學院畢業。不要說英文了,我其實連中文都不好。但是不會有一個人說我不會講中文
                      2. 同樣的,一個三歲小孩會講話,你不會說他不會講中文,他只是詞彙比較少,無法完全表達到位
                      3. 我開始觀察不同影集中,不同人的講話口吻。
                      4. 像生活大爆炸的影集,裡面的人講話都非常學術,不適合參考。但是Friends裡的內容就很容易參考,你可以想像Joey不太可能使用太難的詞彙。
                      5. Friends 裡的 Rachel 很喜歡用right這個字。 「You don’t have the right to do that to me/ 你沒有權利這樣對我」。 right 這個字非常簡單,可能是我們學英文的第一年會出現的單字,但是你可能要學多一點才知道,原來right 這個字可以當「權利」來使用。
                      6. 再來是星際大戰裡的 Yoda,yoda 有一句經典的話「Do or Do not, there’s no try」 這也是一句很簡單的英文,卻能夠簡單的表達尤達的意思。如果你還有看其他集的話,你會知道尤達大師很喜歡用動詞開頭直接講話。
                      7. 每一個人都有每個人講話的語調和習慣。我們只是還沒找到我們講英文的語調而已。
                      8. 所以我告訴自己,我不需要講一口很厲害的英文,我只需要把我想表達的說出來就好了。
                      9. 並且我不需要很難的詞彙,有時可以用很簡單的方法代替。
                      10. 當我這樣想的時候,我漸漸找到我說英文的語調,並且開始喜歡說英文。 我覺得最有趣的是,當我說中文和英文的語調不同時,我好像打開了一扇門,認識一個新的自己

                      多益785

                      其實我的英文可能沒這麼好,但是卻可以有一份全英文的工作,這都是這幾年來的努力。 剛好這份工作也三年了,我有一個空檔,想把增進自己的多益成績。

                      785-900的解析是「可有效運用英語滿足社交及工作所需、措辭洽當、表達流暢;但在某些特定情形下,如:面臨緊張壓力、討論話題過於冷僻艱澀時,仍會顯現出語言能力不足的狀況。」

                      這也正確地描繪出我在工作中的狀態,我可以表達大部分的工作所需。但是有時候緊張,可能會有無法完全表達。所以之後如果有機會,我也會繼續增進自己的英文能力。

                      準備考試

                      我在2018/01月考過一次多益,所以我只給自己六周的準備時間,目標是800分。

                      練多益最有效的還是買一套考題直接開練,我一開始還傻傻的讀文法。大約前三周的時間,我都在看文法跟單字。

                      一直到倒數三週時,我開始練了第一個多益試題。結果成績出來只有615,比六年前的考試還低,我還在想,目標800是不是太高了,是不是有700就要偷笑了。

                      所以說練考題真的很重要,倒數第二周我寫了第二份考題,分數685。

                      最後一週多益官方還提供了一份模擬試題,所以我在最後一週寫了四份模擬試題。

                      真心建議不要最後一週再寫這麼多題,因為練完還需要檢討,檢討需要在24小時回顧全部的錯誤題目,才對自己有幫助。

                      最後一週我在寫閱讀模擬試題的時候,發現自己有時候看不太完part 7 ,有時候只能猜最後幾題。

                      但是在考場的時候,我全部都看得懂,並且寫完後,還剩下整整十分鐘。讓我可以檢查一些part 5、part 6 的問題。

                      時間總分聽力閱讀
                      2018/01 多益考試635370265
                      test 1615355260
                      test 2685435250
                      TOEIC 提供模擬考720450270
                      test 3710415295
                      test 4680395285
                      test 5750450300
                      2024/12 多益考試785435350

                      多益600 →785的練習小技巧

                      最後提供一些600 → 785 分的練習小技巧:

                      1. 可以抓五份(如果有空:十份)的考題練習。
                      2. 練習需要計時,並且在24小時(當日或隔日),檢討錯誤的內容,並及時改正。
                      3. 單字的部分,只需要把練習的考題中,出現不會的單字記下來就好了。
                      4. 聽力的部分,可以重複聽不熟練的部分,聽力的part 2 需要很專注聽,只要錯過開頭的字,可能就不知道問什麼了。
                      5. 我自己文法的地方偏弱,但發現加強文法也沒有實際增進分數。能夠最快增加分數的方法就是練閱讀題,抓到讀閱讀的方法。

                      雖然我的目標是800,考到785算是這次考試中的一點小遺憾。不過這也激勵我學英文的路是不能停止的,以後也要多多的閱讀+使用英文的內容,讓我在工作時更順暢。

                      多益練習題參考

                      這三本是我這六周最主要使用的多益練習題,一本買下來也不是很便宜。所以只要是新制的多益模擬考題(只要題型規劃是一樣的)我都覺得非常值得參考。這三本我在圖書館借了將近六周的時間,也沒有花到半毛錢,提供大家一個不用錢的準備方法。

                      如果鈔能力還夠的話,不只買書來閱讀,還可以參考hahow上的課程。用linepay結帳還有8%回饋喔。我覺得要省時間縮短自己的預備時間的話,最後可以參考過來人的經驗,就像你現在在閱讀我的文章。但是要更省時間的話,當然是直接花錢聽老師給你最精華的內容。

                      推薦這堂30回的精華試題高效解析,老師直接講到多益考試的重點,並且濃縮考題。不需要每回都花兩個小時練習,就能夠直接抓到重點。新多益金牌訓練所|30回精華試題高效解析

                      以上是我這十年來學英文的小小心得,希望能幫助到大家。比起多益的分數,我覺得最重要得是讀英文的樂趣。

                      2025-01-14 1 comment
                      0 FacebookTwitterPinterestEmail
                      Load More Posts

                      近期文章

                      • [SAS] Macro Language 2: 內建macro,使用 SQL/DATA step 建立Macro variable
                      • [SAS] Macro Language 基礎內容
                      • ccClub 讀書會推薦,免費學python
                      • [閱讀心得 #21]你願意,人生就會值得
                      • 理想生活,該長怎麼樣子?

                      近期留言

                      • 「peter」於〈多益330 → 多益785 多益成績棕色到藍色證書〉發佈留言
                      • 「wenwu」於〈[SAS]存活分析(2) COX regression model〉發佈留言
                      • 「joey53111」於〈Statistical Programmer在CRO工作一年的心得〉發佈留言
                      • 「丁柏仁」於〈Statistical Programmer在CRO工作一年的心得〉發佈留言
                      • 「peter」於〈Statistical Programmer在CRO工作一年的心得〉發佈留言

                      免費訂閱

                      不定期更新文章,點一下追蹤就能夠收到最新文章!

                      一起加入其他 19 位訂閱者的行列

                      Statistics

                      • 22,850
                      • 699,279
                      • 74
                      R 線上課程參考

                      @2019 - All Right Reserved. Designed and Developed by PenciDesign

                      Wenwu's blog
                      • 文章總列表
                      • 統計分析
                        • R SAS All
                          R

                          [R]散佈圖與相…

                          2019-12-31

                          R

                          [R]Logis…

                          2019-10-31

                          R

                          [SAS][R]…

                          2019-09-27

                          R

                          [R]Chi-s…

                          2019-09-19

                          SAS

                          [SAS] Ma…

                          2026-09-08

                          SAS

                          [SAS] Ma…

                          2026-01-21

                          SAS

                          [SAS]傾向分…

                          2020-10-28

                          SAS

                          [SAS]Log…

                          2020-06-10

                          統計分析

                          [SAS] Ma…

                          2026-09-08

                          統計分析

                          [SAS] Ma…

                          2026-01-21

                          統計分析

                          什麼是meta-…

                          2024-11-05

                          統計分析

                          Test-ret…

                          2024-06-07

                      • SAS
                        • SAS

                          [SAS] Ma…

                          2026-09-08

                          SAS

                          [SAS] Ma…

                          2026-01-21

                          SAS

                          [SAS]傾向分…

                          2020-10-28

                          SAS

                          [SAS]Log…

                          2020-06-10

                          SAS

                          [SAS]迴歸分…

                          2020-02-28

                      • R
                        • R

                          [R]散佈圖與相…

                          2019-12-31

                          R

                          [R]Logis…

                          2019-10-31

                          R

                          [SAS][R]…

                          2019-09-27

                          R

                          [R]Chi-s…

                          2019-09-19

                          R

                          [SAS][R]…

                          2019-07-08

                      • 機器學習
                        • 機器學習

                          Unsuperv…

                          2021-07-22

                          機器學習

                          Unsuperv…

                          2021-07-12

                          機器學習

                          Unsuperv…

                          2021-05-20

                          機器學習

                          Unsuperv…

                          2021-05-12

                          機器學習

                          Matrix F…

                          2021-04-30

                      • 閱讀筆記
                        • 閱讀筆記

                          [閱讀心得 #2…

                          2025-02-05

                          閱讀筆記

                          [閱讀心得#20…

                          2024-10-25

                          閱讀筆記

                          [閱讀心得#19…

                          2024-08-16

                          閱讀筆記

                          [閱讀心得#18…

                          2024-05-10

                          閱讀筆記

                          [閱讀心得#17…

                          2022-01-22