旗下產(chǎn)業(yè): A產(chǎn)業(yè)/?A實習(xí)/?A計劃
全國統(tǒng)一咨詢熱線:010-5367 2995
首頁 > 熱門文章 > 大數(shù)據(jù)分析 > 大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

時間:2020-09-24來源:5wd995.cn點擊量:作者:Sissi
時間:2020-09-24點擊量:作者:Sissi




  R是用于統(tǒng)計分析,數(shù)據(jù)科學(xué)和報告的最受歡迎的語言之一。在AAA教育,我們一直在添加R課程(您可以在我們的最新更新中了解更多信息)。要比較R和Python,請在此處查看我們的分析。在大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器中,我們將通過構(gòu)建一個簡單的成績計算器來教您R的基礎(chǔ)知識。雖然我們不假定任何R特定知識,但是您應(yīng)該熟悉一般的編程概念。您將學(xué)習(xí)如何:

  1)進行計算
  2)存儲您的價值
  3)使用特定功能回答問題

  大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器基于我們新發(fā)布的R入門課程的一部分。該課程完全免費,并包含結(jié)業(yè)證書。去這里開始課程。

  計算成績

  假設(shè)您是一名高中生,并且想要計算平均成績(GPA)。GPA代表您在所有課程中累積的最終分數(shù)的平均值。您要參加七個課程,包括考試,家庭作業(yè)和項目,所有課程的權(quán)重均相等。我們假設(shè)GPA的測量范圍是0-100。在數(shù)學(xué)課上,您92在考試,87家庭作業(yè)和85項目上都獲得了滿分。要計算平均數(shù)學(xué)成績,我們可以編寫以下內(nèi)容:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  我們可以手動執(zhí)行諸如計算平均值之類的任務(wù)。但是,如果我們必須計算一千名學(xué)生的平均數(shù),那么手工計算將不會有效利用我們的時間。相反,我們將使用編程來要求計算機執(zhí)行計算。

  執(zhí)行計算

  我們將從使用R作為基本計算器開始。我們先前編寫了以下內(nèi)容來計算數(shù)學(xué)課的最終成績:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  整個代碼行稱為表達式。我們將表達式寫在稱為腳本的文本文件中。腳本是我們提供給計算機的一組指令。用腳本編寫表達式后,解釋器將運行代碼并在新窗口中顯示表達式的結(jié)果。讓print()我們以數(shù)學(xué)分數(shù)來運行語句,作為介于之間的表達式():
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  運行表達式,解釋器將在新窗口中輸出以下值:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  注意:[1]當(dāng)您深入研究向量時,“ ”將很有意義,但在大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器的上下文中您無需了解它。在我們顯示的結(jié)果中,計算和print()語句都具有成對的匹配括號。為了更清楚一點,這里是相同的計算:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  運行此表達式將產(chǎn)生與將所有內(nèi)容寫在一行上相同的結(jié)果。每個起始括號都需要一個閉合括號。讓我們嘗試刪除右括號:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  如果您的代碼有錯誤,解釋器將告訴您有錯誤以及該錯誤是什么。在我們的例子中,解釋器返回:Error in parse(text = x, srcfile = src): :7:0: unexpected end of input。

  文本unexpected end of input表示R解釋器(我們的代碼)的輸入缺少右括號)。您可以嘗試使用上面的表達式,看看還會遇到什么其他類型的錯誤。

  執(zhí)行多次計算

  現(xiàn)在,我們已經(jīng)使用該print()語句看到了結(jié)果,讓我們更深入地研究R解釋器如何運行代碼。它:

  1)掃描并查找語法錯誤。
  2)從上到下解釋并運行每一行代碼。
  3)運行最后一行代碼時退出。

  我們已經(jīng)寫了一個表達式來計算您在數(shù)學(xué)課上的最終成績。要了解R代碼的順序解釋方式,我們還要添加一個表達式來計算化學(xué)分數(shù)。在化學(xué),你的得分分別為90,81和92。如果我們在單獨的行上運行兩個計算,會發(fā)生什么?


  運行此代碼,R解釋器將顯示:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

如果我們編寫兩行代碼,R是否總是顯示兩行?如果將代碼分成多行怎么辦?

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  R解釋器仍將顯示相同的值:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  注意R如何解釋我們的代碼。每個print語句在結(jié)果中對應(yīng)于它自己的一行:

  如果我們想計算寫作和美術(shù)的平均分數(shù),可以在隨后的每一行中寫下這些表達式:

  1)寫作:84,95,79
  2)藝術(shù):95,86,93
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  運行這些表達式將顯示以下結(jié)果:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  使用算術(shù)運算符執(zhí)行計算

  +并且/稱為算術(shù)運算符。算術(shù)運算符用于執(zhí)行數(shù)學(xué)運算。在下圖中,您將找到最常用的運算


大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器
 

  對于不熟悉冪運算的人,冪運算是一種使用**or ^運算符將數(shù)字本身乘以特定次數(shù)的方法。如果我們想將值4自身乘以3倍,則使用乘法*運算符將如下所示:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  雖然使用乘法運算符將4乘以3并不太麻煩,但如果我們想將值4乘以20乘以,則使用乘法運算符并不是最有效的方法。相反,我們可以將計算表示為指數(shù):


大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  運行4**20將返回:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  現(xiàn)在我們了解了算術(shù)運算符,讓我們計算最后三個課程的最終成績:歷史,音樂和體育:

  1)歷史:77,85,90
  2)音樂:92、90、91
  3)體育:85、88、95
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  然后,解釋器將顯示:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  按操作順序執(zhí)行計算

  現(xiàn)在,我們已經(jīng)了解了如何使用算術(shù)運算符來計算每個班級的平均分數(shù),讓我們回到數(shù)學(xué)的平均計算:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  如果我們刪除周圍的括號92 + 87 + 85怎么辦?
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  這將顯示:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  通過刪除周圍的括號92 + 87 + 85,R解釋器進行不同的計算。使用多個運算符時,有一些規(guī)則可以確定執(zhí)行計算的順序。確定計算順序的一種簡單方法是在要首先執(zhí)行的計算周圍加上括號。這對于更復(fù)雜的計算非常有用,例如:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器
 

  在這種情況下,我們在92 + 87 + 85 + 67 + 92 + 84和周圍加了一個括號77 + 90 + 98。我們要告訴解釋器在執(zhí)行除法之前執(zhí)行加法運算符。R解釋器遵循數(shù)學(xué)運算規(guī)則的順序。記住這一點的簡單方法是PEMDAS:

  1)P arentheses
  2)Ë xponent
  3)中號 ultiplication或d暫無報價
  4)甲 ddition或小號 ubtraction

  讓我們看一個沒有括號的例子。對于92 + 87 + 85/3,R解釋器將按以下順序計算表達式:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  如果您沒有在圓括號中包含括號92 + 87 + 85,則根據(jù)PEMDAS,R解釋器將首先計算除法運算符?,F(xiàn)在,讓我們將括號重新添加到表達式中。對于(92 + 87 + 85)/3。R解釋器將按差異序列計算表達式:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  這是每個班級的最終成績:

  1)數(shù)學(xué):88
  2)化學(xué):87.66667
  3)寫作:86
  4)藝術(shù):91.33333
  5)歷史:84
  6)音樂:91
  7)體育教育:89.33333

  讓我們計算總體平均值,同時牢記PEMDAS。在相同的表達式中計算出總體平均值后,從數(shù)學(xué)分數(shù)中減去該總體平均值:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  創(chuàng)建評論

  在前面的練習(xí)中,我們使用運算符進行了多次計算。稍后,當(dāng)我們編寫數(shù)百行代碼時,組織代碼是一種良好的編程習(xí)慣。我們可以通過插入注釋來組織代碼。注釋是幫助人們(包括您自己)理解代碼的注釋。R解釋器可以識別注釋,將其視為純文本,并且不會嘗試執(zhí)行它們。我們可以在代碼中添加兩種主要的注釋類型:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  1)內(nèi)嵌評論
  2)單行注釋

  內(nèi)嵌注釋內(nèi)嵌注釋在我們要注釋或向特定語句添加更多細節(jié)時很有用。要在語句末尾添加內(nèi)聯(lián)注釋,請從井號(#)開始,然后添加注釋:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  盡管我們不需要在井號(#)后面添加空格,但是這被認為是不錯的樣式,它使我們的注釋更整潔,更易于閱讀。單行注釋單行注釋跨越整個行,在我們要將代碼分為幾部分時很有用。要指定我們希望將文本行作為注釋,請以井號(#)開始:

  讓我們在代碼中添加注釋!
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  給變量賦值

  使用R進行簡單的計算非常有用。但是,一種更可靠的方法是存儲這些值以供以后使用。這種存儲值的過程稱為變量賦值。R中的變量就像可以保存值的命名存儲單元。分配變量的過程需要兩個步驟:

  1)命名變量。
  2)使用將值分配給名稱<-。

  命名變量時,必須遵循一些規(guī)則:

  1)變量名稱由字母,數(shù)字,點或下劃線組成。
  2)我們可以以字母或點開頭的變量。如果是點,那么我們不能在其后加上數(shù)字。
  3)我們不能以數(shù)字開頭的變量。
  4)不允許使用特殊字符。

  有關(guān)更多詳細信息,請參見下表,詳細列出了允許使用哪些變量名稱和不允許使用哪些變量名稱:


大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器
 
 

  讓我們返回數(shù)學(xué)分數(shù)計算:(92 + 87 + 85)/3,該計算的結(jié)果為88。要存儲88在名為的變量中math,讓我們編寫以下表達式:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  然后,如果我們嘗試進行print()數(shù)學(xué)運算,像這樣:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  這將顯示: [1] 88

  變量不僅可以保存我們的計算結(jié)果,還可以分配表達式的值:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  然后,如果我們嘗試打印數(shù)學(xué),像這樣:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  這將顯示與我們原始計算相同的結(jié)果 [1] 88

  我們已經(jīng)將數(shù)學(xué)成績存儲在一個變量中。提醒一下,以下是課程和成績:

  1)化學(xué):87.66667
  2)寫作:86
  3)藝術(shù):91.33333
  4)歷史:84
  5)音樂:91
  6)體育教育:89.33333

  讓我們將其他分數(shù)存儲在變量中。
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  使用變量執(zhí)行計算

  現(xiàn)在我們已經(jīng)將每個班級的成績存儲在變量中,我們可以使用這些變量來找到平均成績。讓我們看看我們的數(shù)學(xué)和化學(xué)分數(shù):

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  在執(zhí)行計算時,變量和值被視為相同。使用math和chemistry變量,88 + 87.66667與相同math + chemistry。使用變量執(zhí)行計算時,PEMDAS規(guī)則仍然適用。如果我們想看看您在數(shù)學(xué)方面比化學(xué)方面的成績要好得多,我們可以使用減法-算術(shù)運算符來找出差異:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  顯示:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  如果我們想找到數(shù)學(xué)和化學(xué)的平均成績,我們可以使用+,/,()對兩個變量運營商:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  顯示:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  完成這些計算后,我們還可以將這些表達式的結(jié)果存儲在變量中。如果我們想將數(shù)學(xué)和化學(xué)的平均值存儲在一個名為的變量中average,它將看起來像這樣:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  顯示平均值將返回相同的值87.83334。

  讓我們使用以下變量來計算平均成績:

  1)math <- 88
  2)chemistry <- 87.66667
  3)writing <- 86
  4)art <- 91.33333
  5)history <- 84
  6)music <- 91
  7)physical_education <- 89.33333
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  然后,讓我們gpa從歷史記錄中減去您的歷史記錄,看看歷史記錄是否低于平均值。將此差異存儲在中history_difference。

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  創(chuàng)建向量

  在前面的示例中,使用變量計算平均成績非常有用。但是,在數(shù)據(jù)科學(xué)中,我們經(jīng)常處理數(shù)千個數(shù)據(jù)點。如果您獲得每個班級每個家庭作業(yè),考試或項目的分數(shù),則我們的數(shù)據(jù)集將會很大?;氐轿覀兊臄?shù)學(xué),化學(xué)示例,讓我們看一下當(dāng)前的變量:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  而不是店兩個變量這兩個值,我們需要一個可以存儲在存儲單元的多個值。在R中,我們可以使用向量存儲這些值。向量是可以存儲值序列的存儲容器。然后,我們可以使用變量命名向量。像這樣:


大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器
 

  要創(chuàng)建矢量,您將使用c()。在R中,c()稱為函數(shù)。與該print()語句類似,該c()函數(shù)接受多個輸入并將這些值存儲在一個位置。該c()函數(shù)不對值執(zhí)行任何算術(shù)運算,而僅存儲這些值。您可以在此處閱讀有關(guān)該c()功能的更多信息。以下是創(chuàng)建矢量的步驟:

  1)確定要存儲在向量中的值,并將這些值放置在c()函數(shù)中。使用逗號分隔這些值,。
  2)使用將向量分配給您選擇的名稱<-。

  讓我們創(chuàng)建一個包含數(shù)學(xué)和化學(xué)分數(shù)的向量。數(shù)學(xué)分數(shù)是88,化學(xué)分數(shù)是87.66667。

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  我們還可以使用您的變量名創(chuàng)建向量:
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


如果要這樣做print(math_chemistry),它將如下所示:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  另一方面,如果我們嘗試存儲值序列,如下所示:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器


  R解釋器將僅嘗試將88分配給,math_chemistry但在88之后將無法解釋逗號:Error: unexpected ',' in "math_chemistry <- 88,"

  讓我們使用以下變量將最終分數(shù)存儲在向量中:
 
大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

  計算平均值


  現(xiàn)在我們已經(jīng)將您的成績存儲在矢量中,我們可以計算平均成績了。在上一個練習(xí)中,您使用算術(shù)運算符來計算平均成績:
 

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器
 

  盡管此解決方案有效,但該解決方案不可擴展?,F(xiàn)在,您已經(jīng)創(chuàng)建了一個向量,我們有了一種更簡單的方法來計算平均成績。要使用向量計算平均成績,請使用mean()函數(shù)。該mean()函數(shù)將獲取一個輸入(向量)并計算該輸入的平均值。然后,解釋器將顯示結(jié)果。讓我們將mean()函數(shù)應(yīng)用于math_chemistry向量:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器

 



  這將返回:

大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器
 

  讓我們將該mean()函數(shù)應(yīng)用于最終成績矢量!


  讓我們將該mean()函數(shù)應(yīng)用于最終成績矢量!

  對向量執(zhí)行操作

  以前,您是使用mean()函數(shù)和向量計算最終成績的。在數(shù)據(jù)科學(xué)中,您總是可以使用數(shù)據(jù)回答多個問題。讓我們更深入地研究final_grades向量,然后再問幾個問題:

  1)最高分數(shù)是多少?

  2)最低分數(shù)是多少?

  3)你選了幾節(jié)課?

  要回答這些問題,您將需要一些其他功能:

  1)min():找到向量中的最小值

  2)max():在向量中找到最大值

  3)length():查找向量擁有的值的總數(shù)

  4)sum()::獲取向量中所有值的總和(注意:本教程中將不使用。)

  您可以應(yīng)用此功能,類似于您應(yīng)用

  mean()功能。為了在math_chemistry向量中找到最大分數(shù),我們將max()函數(shù)應(yīng)用于該向量:

  顯示: [1] 88

  讓我們再回答幾個有關(guān)您成績的問題!

  1)您在哪個班上得分最高?使用max()。

  2)您在哪一門課程中得分最低?使用min()。

  3)你選了幾節(jié)課?使用length()。



  下一步

  如果您想了解更多信息,大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器基于我們的R基礎(chǔ)知識課程,該課程是我們R軌道數(shù)據(jù)分析師的一部分。基于大數(shù)據(jù)分析如何使用R語言構(gòu)建一個簡單的成績計算器中的概念,您將學(xué)習(xí):

  1)操作向量的更復(fù)雜方法:

  a)索引到向量

  b)過濾出向量中的不同值

  c)向量的不同行為

  2)使用矩陣提出大學(xué)建議

  a)創(chuàng)建自己的矩陣

  b)切片和重新組織矩陣

  c)排序矩陣

  3)使用數(shù)據(jù)框分析大學(xué)畢業(yè)生數(shù)據(jù)

  a)數(shù)據(jù)框中包含的不同數(shù)據(jù)類型

  b)選擇并細分數(shù)據(jù)框中的特定值

  c)將條件添加到數(shù)據(jù)框選擇中

  4)使用列表存儲各種值

  a)索引到列表

  b)從列表中添加和減去值

  c)合并清單


預(yù)約申請免費試聽課

填寫下面表單即可預(yù)約申請免費試聽!怕錢不夠?可先就業(yè)掙錢后再付學(xué)費! 怕學(xué)不會?助教全程陪讀,隨時解惑!擔(dān)心就業(yè)?一地學(xué)習(xí),可推薦就業(yè)!

?2007-2021/北京漫動者教育科技有限公司版權(quán)所有
備案號:京ICP備12034770號

?2007-2022/ 5wd995.cn 北京漫動者數(shù)字科技有限公司 備案號: 京ICP備12034770號 監(jiān)督電話:010-53672995 郵箱:bjaaa@aaaedu.cc

京公網(wǎng)安備 11010802035704號

網(wǎng)站地圖