R03: 常用的基本功能R basic functions

閱讀時間約 5 分鐘

今天想跟大家介紹幾個R常用的功能,我並不打算像R的教學書籍一步一步的系統性教學,因為要求系統性教學,我會花太多時間在準備教程,讓這個R的教學太正式,失去了blog的感覺,反而帶給大家太多壓力,所以你可能覺得我的文章很跳躍,的確是這樣沒錯,但是寫程式重點在於,善用網上資源,跟程式撰寫的邏輯養成,而我的任務不會著重在這兩個部分,而是讓你看到R可以做什麼事情,去引發你自我學習R的企圖心,當然在這系列文章中,還是有一些教學的脈絡,但是那不是我寫文章的初衷,而我的初衷是要引發你的興趣。
第一個我想講的是怎麼產生隨機數,這個為什麼很重要呢?當你要在ptt/stackoverflow 上問問題時,大家通常都會要你提供樣本數據,以供測試,又或者在你寫程式的時候,你需要測試scripts,如果手邊沒有實際數據可以測試,我通常會使用亂數產生的數據,亂數產生的functions包含runif()、sample()、rnorm()等等。
這邊先來看看runif 跟sample的使用辦法,我下面的寫法為從1到100隨機取十個數,
> runif(10,1,100)
[1] 34.84857 64.58274 16.50319 22.58514 37.36246 34.97631 19.54502 65.30065 17.61412 72.37462
#只取整數的寫法
> floor(runif(10,1,101))
[1] 94 55 27 76 15 4 36 100 13 10
> sample(1:100,10)
[1] 28 13 1 78 68 18 10 43 67 38
#如果想要你的隨機可以被重複的話使用 set.seed(x) x 為隨意整數
> set.seed(5)
> runif(10,1,100)
[1] 20.82123 68.83664 91.77070 29.15555 11.36036 70.40469 53.26804 80.98558 95.69351 11.93485
> set.seed(5)
> floor(runif(10,1,101))
[1] 21 69 92 29 11 71 53 81 96 12
第二種方法是隨機取數但數列平均為X標準差為Y
> rnorm(10)
[1] 0.0894771 1.6267513 -1.3325510 0.7343093 1.8798380 0.2859744 -0.5899226 -0.2248598 -2.1197585 0.5481381
#默認X = 0, y = 1
> rnorm(10, 1, 0.5)
[1] 0.4587659 1.3565658 0.8681169 0.9135287 -0.1811799 1.5290381 1.0060021 0.7302146 0.6065974 1.1954373
通常這兩個functions你可以也寫出大部分的隨機數列了,最後一個我沒提到的就是rbinom相關的幾個functions讓你自己去體驗了。
> library(ggplot2)
> us_states <- map_data("state")
> dim(us_states) #look data dimension
[1] 15537 6
> colnames(us_states) #look colnames
[1] "long" "lat" "group" "order" "region" "subregion"
> nrow(us_states) #look number of observations
[1] 15537
> ncol(us_states) #look number of vairables
[1] 6
> summary(us_states$lat) #look summary of latitude
Min. 1st Qu. Median Mean 3rd Qu. Max.
25.13 33.91 38.18 38.18 42.80 49.38
第二個我覺得比較重要的是你要怎麼summary的你數據,下面我是用美國polygon的數據來作例子,做nrow的部分是有時候loop over我們的數據,我們之後會講迴圈啦,這邊只是簡單提一下,你就可以很簡單loop over數據了。
for(i in 1:nrow(df)){
AAAA
BBBB
}
再來是summary的部分包含有最小值,25%,50%,平均值,75%,最大值的數據,如果有missing 或是 NA他也會顯出來有幾個NA的數據,非常好用的功能。
本來是還想講其他功能,不過最近真的好累,每個星期工作量雖然沒有太大增加,但是客戶很機巴,壓力變很大,加上都沒什麼社交活動每天只能面對老婆跟小屁孩,腦袋還是不要讓它過熱好了!
感覺上歐美第二波疫情好像開始了,如果你在台灣那恭喜你,台灣目前應該是全世界最安全的國家,如果你不在台灣,還是要注意社交距離,減少暴露在人群擁擠的狀況下,但不論你在哪邊戴口罩一定是必須的,以公衛的角度來看,戴口罩是目前最好的手段能減少中共病毒擴散卻又能保持社會一定運作。

為什麼會看到廣告
    avatar-img
    16會員
    33內容數
    小黃在美國生活十幾年,累積累積一堆生活上,研究所修課,找工作,工作上相關的資訊,我盡我所能跟大家分享,也希望聽見大家的反饋,Little Yellow in USA (LYUSA)
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    Jiaoyan Huang的沙龍 的其他內容
    我們上次提到怎麼安裝R,跟packages,我發現在剛學程式語言或是數據分析的時候,大部分的人學了一點基礎之後,都會想直接輸入數據,開始自己動手做,但是對於沒嘗試過programming的人來說,即便使用了IDE,第一個小障礙會是怎麼把不同數據輸入程式之中,好在R或者Rstudio要做這件事情十分方
    現在這個時代,不管你是讀什麼科系,多多少少要會一點語言程式,用來做大量分析數據,或是幫你完成千篇一律重複性又高的工作,讓你有更多寶貴的時間去做更重要的想法發想、討論,重複性數據分析就交給電腦程式去執行,魯叔從大學到現在大概使用過Fortran(77、95、fixed、free,是我博班到博後使用
    近期因為新冠狀病毒(中國共產黨病毒)肆虐,全球開始大規模在家工作(Work from home, WFH)的趨勢,剛好可以來聊聊我電腦中比較有用的程式或是網頁。 第一個當然就是AnyConnect VPN(Cisco),主要是用來連結家裡電腦跟公司網路,並可以使用公司網路裡面有的檔案位置等等。
    先註明文章中的產品都是我自己用過推薦,沒有任何業配。 小孩子1–3歲的花費,在這邊是想用行住衣食育樂的順序來討論比較簡單
    很多人都說美國生小孩很貴,這個話並不完全正確,生小孩的花費完全取決於你的保險、孕婦跟小孩的狀況,大部分人都有一個印象美國醫療花費不是那麼透明,而在生產的這件事情上,初為人父母的緊張常常造成對於醫療花費的無所適從,尤其事關小孩跟母親,我們通常只能做很侷限的選擇;重要的話先說在前面,打算要生小孩的前一
    我們上次提到怎麼安裝R,跟packages,我發現在剛學程式語言或是數據分析的時候,大部分的人學了一點基礎之後,都會想直接輸入數據,開始自己動手做,但是對於沒嘗試過programming的人來說,即便使用了IDE,第一個小障礙會是怎麼把不同數據輸入程式之中,好在R或者Rstudio要做這件事情十分方
    現在這個時代,不管你是讀什麼科系,多多少少要會一點語言程式,用來做大量分析數據,或是幫你完成千篇一律重複性又高的工作,讓你有更多寶貴的時間去做更重要的想法發想、討論,重複性數據分析就交給電腦程式去執行,魯叔從大學到現在大概使用過Fortran(77、95、fixed、free,是我博班到博後使用
    近期因為新冠狀病毒(中國共產黨病毒)肆虐,全球開始大規模在家工作(Work from home, WFH)的趨勢,剛好可以來聊聊我電腦中比較有用的程式或是網頁。 第一個當然就是AnyConnect VPN(Cisco),主要是用來連結家裡電腦跟公司網路,並可以使用公司網路裡面有的檔案位置等等。
    先註明文章中的產品都是我自己用過推薦,沒有任何業配。 小孩子1–3歲的花費,在這邊是想用行住衣食育樂的順序來討論比較簡單
    很多人都說美國生小孩很貴,這個話並不完全正確,生小孩的花費完全取決於你的保險、孕婦跟小孩的狀況,大部分人都有一個印象美國醫療花費不是那麼透明,而在生產的這件事情上,初為人父母的緊張常常造成對於醫療花費的無所適從,尤其事關小孩跟母親,我們通常只能做很侷限的選擇;重要的話先說在前面,打算要生小孩的前一
    你可能也想看
    Google News 追蹤
    Thumbnail
    Hi 我是 VK~ 在 8 月底寫完〈探索 AI 時代的知識革命:NotebookLM 如何顛覆學習和創作流程?〉後,有機會在 INSIDE POSSIBE 分享兩次「和 NotebookLM 協作如何改變我學習和創作」的主題,剛好最近也有在許多地方聊到關於 NotebookLM 等 AI 工具
    Thumbnail
    國泰CUBE App 整合外幣換匯、基金、證券等服務,提供簡便、低成本的美股定期定額投資解決方案。 5分鐘開戶、低投資門檻,幫助新手輕鬆進軍國際股市;提供人氣排行榜,讓投資人能夠掌握市場趨勢。
    Thumbnail
    這是張老師的第三本書,我想前二本應該也有很多朋友們都有讀過,我想絕對是受益良多,而這次在書名上就直接點出,著重在從投資的角度來切入
    Thumbnail
    《財富流沙盤推演心得》,作者鋒玲探討了生命的無常,反思了在追求財富過程中被忽視的生命質量和珍貴的關係。作者透過模擬60-80歲的人生,重新定義了財富的意義,提出應集中於時間、健康、關係等非物質的價值。此經驗不僅激發了她的自我反思,也讓她決定重新規劃人生下半場。值得面對未來的不確定性的人思考與借鑒。
    Thumbnail
    (又是貓!) 看著眼前這個狂舔毛、吃腳腳、我行我素,動不動就躺平的五公斤大貓,很難想像一年以前他來到我們家時,還只是個200公克的小傢伙,雖然人類也是由小嬰兒長大成人,但畢竟需耗費十幾年的時光啊。
    Thumbnail
    這是一篇結合了寫作、藝術和心理健康的反思文章。探討在日常生活中面對壓力時,如何透過創作和藝術來尋找平靜與寧靜。作者分享了自己撰寫小說的過程與挑戰,以及在繪畫中獲得的短暫靜謐感,提醒讀者在忙碌的生活中找到自我放鬆的方式。文章向那些渴望舒緩壓力的人提供了實用的建議與啟發。
    Thumbnail
    2024.06.20(四) 第 59 集 【如虎添翼 第十二週 第 59 集】 ﹝家中須有妻?﹞ ─ 此生無憾 ─
    Thumbnail
    2023名古屋AOK講習會筆記·六 進場 搭箭 取懸與打起的時機 回箭 退場
    Thumbnail
    黴女在臺北城開展捷運印章蒐集活動,本篇分享她的世貿台北國際書展和臺北101觀景臺的心得。分享了2024年書展參觀心得以及以及重點展品、帶有書本特色的設計佈局和展商,還介紹了101觀景臺的景點參觀心得和觀光資訊,總結了值得關注的活動和美景。
    Thumbnail
    Hi 我是 VK~ 在 8 月底寫完〈探索 AI 時代的知識革命:NotebookLM 如何顛覆學習和創作流程?〉後,有機會在 INSIDE POSSIBE 分享兩次「和 NotebookLM 協作如何改變我學習和創作」的主題,剛好最近也有在許多地方聊到關於 NotebookLM 等 AI 工具
    Thumbnail
    國泰CUBE App 整合外幣換匯、基金、證券等服務,提供簡便、低成本的美股定期定額投資解決方案。 5分鐘開戶、低投資門檻,幫助新手輕鬆進軍國際股市;提供人氣排行榜,讓投資人能夠掌握市場趨勢。
    Thumbnail
    這是張老師的第三本書,我想前二本應該也有很多朋友們都有讀過,我想絕對是受益良多,而這次在書名上就直接點出,著重在從投資的角度來切入
    Thumbnail
    《財富流沙盤推演心得》,作者鋒玲探討了生命的無常,反思了在追求財富過程中被忽視的生命質量和珍貴的關係。作者透過模擬60-80歲的人生,重新定義了財富的意義,提出應集中於時間、健康、關係等非物質的價值。此經驗不僅激發了她的自我反思,也讓她決定重新規劃人生下半場。值得面對未來的不確定性的人思考與借鑒。
    Thumbnail
    (又是貓!) 看著眼前這個狂舔毛、吃腳腳、我行我素,動不動就躺平的五公斤大貓,很難想像一年以前他來到我們家時,還只是個200公克的小傢伙,雖然人類也是由小嬰兒長大成人,但畢竟需耗費十幾年的時光啊。
    Thumbnail
    這是一篇結合了寫作、藝術和心理健康的反思文章。探討在日常生活中面對壓力時,如何透過創作和藝術來尋找平靜與寧靜。作者分享了自己撰寫小說的過程與挑戰,以及在繪畫中獲得的短暫靜謐感,提醒讀者在忙碌的生活中找到自我放鬆的方式。文章向那些渴望舒緩壓力的人提供了實用的建議與啟發。
    Thumbnail
    2024.06.20(四) 第 59 集 【如虎添翼 第十二週 第 59 集】 ﹝家中須有妻?﹞ ─ 此生無憾 ─
    Thumbnail
    2023名古屋AOK講習會筆記·六 進場 搭箭 取懸與打起的時機 回箭 退場
    Thumbnail
    黴女在臺北城開展捷運印章蒐集活動,本篇分享她的世貿台北國際書展和臺北101觀景臺的心得。分享了2024年書展參觀心得以及以及重點展品、帶有書本特色的設計佈局和展商,還介紹了101觀景臺的景點參觀心得和觀光資訊,總結了值得關注的活動和美景。