r語言怎樣快速編譯
❶ r語言編譯器
r語言是個語言環境,rstudio是編譯器。
實際上直接用r進行數據分析也不是不可以,但是個人使用經驗,在debugging的時候不太方便。
rstudio本身能幫你完成模糊拼寫,特別是在你不特別清楚應該使用具體哪一個函數的時候。
可視化方面更好,代碼能夠展示得更加清晰。
rstudio能夠直接幫助更新或者下載個中packages
具體使用看個人習慣吧。
以上。
❷ r語言有沒有windows編譯器
是的,R語言在Windows平台上有專門的編譯器可以使用。這個編譯器叫做Rtools,它是一個自由的櫻碰頌、開源的工具集,可以幫助您在Windows上編譯和構建R包。Rtools包含了一組編譯工具,包括GNU編譯器、GNU make和其他一些實用工具,這些工具可以幫助您編譯和構建R包脊鄭所需的C/C++代碼和其他依賴項。
要在Windows上使用Rtools編譯R包,您需要先在您的計算機上安裝R和Rtools。安裝Rtools的方法是先下載並安裝最新版本的Rtools,然後將Rtools的路徑添加到系統環境變數中吵磨。這樣,您就可以在R中使用編譯器進行編譯和構建R包了。在R中,可以使用命令install.packages()來安裝R包,命令install.packages()還可以使用編譯器編譯和構建源代碼包。
需要注意的是,Rtools需要與您所使用的R版本兼容,因此,在安裝Rtools之前,您需要確認您所使用的R版本與Rtools兼容。另外,使用Rtools進行編譯和構建R包時,您還需要了解一些C/C++編程知識。
❸ 如何在linux環境下使用r語言
1、下載
wget http://mirror.bjtu.e.cn/cran/src/base/R-3/R-3.0.1.tar.gz
2、解壓:
tar -zxvf
R-3.0.1.tar.gz
cd R-3.0.1
3、安裝 (當然也可以跳過)
yum
install readline-devel
yum install libXt-devel
./configure
4、 配置環境並編譯安裝
#
如果使用rJava需要加上 --enable-R-shlib
(這個我不需要,所以加入到後面)
# 如果3沒安裝, 那麼後面加上: --with-readline=no
--with-x=no
./configure --prefix=/usr/R-3.0.1
make $$ make install
5、配置環境變數並生效
vi
.bash_profile
export R_HOME=/usr/R-3.0.1
export PATH=.:$R_HOME/bin:$PATH
# 試環境變數生效
source .bash_profile
6、 命令行測試
[admin@JD
software]$ R
WARNING: ignoring environment value of R_HOME
R version 3.0.1 (2013-05-16) -- "Good Sport"
Copyright (C) 2013 The R Foundation for Statistical Computing
Platform: x86_64-unknown-linux-gnu (64-bit)
R是自由軟體,不帶任何擔保。
在某些條件下你可以將其自由散布。
用'license()'或'licence()'來看散布的詳細條件。
R是個合作計劃,有許多人為之做出了貢獻.
用'contributors()'來看合作者的詳細情況
用'citation()'會告訴你如何在出版物中正確地引用R或R程序包。
用'demo()'來看一些示範程序,用'help()'來閱讀在線幫助文件,或
用'help.start()'通過HTML瀏覽器來看幫助文件。
用'q()'退出R.
> q()
7、創建腳本測試(t.R)
cd
/opt/script/R
vim t.R
#!/path/to/Rscript
#第一行
x<-c(1,2,3)
#R語言代碼
y<-c(102,299,301)
model<-lm(y~x)
summary(model)
8、測試:執行腳本
R CMD BATCH
--args /opt/script/R/t.R
more
/opt/script/R/t.Rout
#查看執行的結果
或者第二種方式
Rscript
/opt/script/R/test.R
#結果直接輸出到終端
❹ r語言教程是什麼
R語言教程是指導使用R語言的手冊,用於統計分析,圖形表示和報告的編程語言和軟體環境。
R語言由Ross Ihaka和Robert Gentleman在紐西蘭奧克蘭大學創建,目前由R語言開發核心團隊開發。R語言在GNU通用公共許可證下免費提供,並為各種操作系統(如Linux,Windows和Mac)提供預編譯的二進製版本。
這種編程語言被命名為R語言,基於兩個R語言作者的名字的第一個字母(Robert Gentleman和Ross Ihaka),並且部分是貝爾實驗室語言S的名稱。
(4)r語言怎樣快速編譯擴展閱讀
適用人群
本教程是為期待使用R編程開發統計軟體的軟體程序員,統計學家和數據挖掘者設計的。如果你試圖理解R編程語言作為一個初學者,本教程將給你足夠的了解語言的幾乎所有的概念,從那裡你可以把自己的更高水平的專業知識。
學習前提
在繼續學習本教程之前,您應該基本了解計算機編程術語。對任何編程語言的基本理解將幫助您理解R語言編程概念,並在學習軌道上快速移動。
❺ R軟體的入門教程及R語言的編譯
建議讀一下《R語言經典實例》
❻ R語言基礎匯總
%>%是管道符的意思,把左邊的輸出(不包括 <- 之前的)當成右邊的輸入。
都可以shift + alt + 上下 :快速復制粘貼
alt + 上下 :移動行
ctrl + alt + 上下 :多重遊標
首先選中要注釋掉的行,然後按Ctrl+shift+C ,這樣就注釋掉了。
sessionInfo()
.libPaths()
一篇關於包的博客
library(installr)
updateR()
COS中文論壇 統計之都旗下的論壇網站(d.cosx.org),它和其主站(cosx.org)一 起,是一個致力於推廣與應用統計學知識的網站和社區。
1 help("t.test")
2 ?t.test
3 help.search("t.test")
4 apropos("t.test")
5 RGui>Help>Html help
6 查看R包pdf手冊
getwd() 顯示工作目錄
setwd() 設定工作目錄
list.files() 列出目錄或文件夾下的文件
demo( ) 顯示R的基本程序包
example( ) 顯示在線幫助的例子
example(barplot)
可以把若干行命令保存在一個文本文件(比如Eg3.R)中,然 後用source函數來運行整個文件: source("E:/R demo/Chapter1-Eg3.R")
sum, mean, var, sd, min, max, range, median, IQR(四分位間距)等為統計量, sort,order,rank與排序有關, 其它還有ave,fivenum,mad,quantile, stem等
-1:1/0 當中/是優先順序靠後的操作。相當於c(-1,0,1)/0
names(df) <- c("male", "female", "unknown")
對於矩陣,我們可以使用屬性rownames和colnames來訪問行名和列名。
我們也可以先定義矩陣x然後再為dimnames(x)賦值:
數值型數據 :1.2345e30
復數常量就用3.5-2.1i
缺失值:NA(Not Available)
是否含有缺失值:
NaN表示不確定的數
• NaN屬於NA的一種
• NA不是NaN
注意下面例子的比較 :
assign("x1", c(1, 2))
sort(x)返回x的元素從小到大排序的結果向量。
x=c(2,10,6,8,4,5); sort(x) [1] 2 4 5 6 8 10 order(x)返回使得x從小到大排列的元素下標向量(x[order(x)]等效於sort(x))。
此外numeric(n)可以產生一個長度為n的零向量(numeric(n)是一個 很好用的外部存儲器)
paste函數用來把它的自變數連成一個字元串,中間用空格分開
Re( )計算實部,Im( )計算虛部, Mod( ) 計算復數模,Arg( )計算復數幅角。
v為一個向量,取值在-length(x)到-1之間,表示扣除相應 位置的元素。例如:
可以用x[]的寫法:
R的對象有兩個基本的屬性:類型屬性(mode)和長度屬性(length)。
長度為零的向量 numeric( ) 或者 numeric(0) character( ) 或者 character(0)
數組(array): 帶多個下標的類型相同的元素的集合,
函數matrix():用於構造二維數組,即矩陣
函數factor( )用來把一個向量編碼成為一個因子。
可以自行指定各離散取值水平(levels),不指定時由x的不同值來求得。
• labels可以用來指定各水平的標簽,不指定時用各離散取值的對應字元串。
• exclude參數用來指定要轉換為缺失值(NA)的元素值集合。
• ordered取真值時表示因子水平(Levels)是有次序的
因子可以用來作為另外的同長度變數的分類變數,使用tapply() 函數可以完成分類統計
nchar()這個函數簡單,統計向量中每個元素的字元個數
tolower()和toupper()可以進行大小寫字母的轉換
chartr()把字元串里的元素,按要求進行轉換
拆分字元串用strsplit()函數,strsplit得到的結果是列表,後面的處理要調用列表
其任何一個語句都可以看成是一個表達式。
表達式之間以分號分隔或用換行分隔。
表達式可以續行,只要前一行不是完整表達式,則下一行為上一行的繼續。
線性回歸模型:
lm()函數的返回值叫做模型擬合結果對象,本質上是一個列表, 有model 、coefficients、resials等成員。lm()的結果顯示十分 簡單,為了獲得更多的擬合信息,可以使用對lm類對象有特 殊操作的通用函數,這些函數包括:
add1 coef effects kappa predict resials alias deviance family labels print summary anova drop1 formula plot proj
加號+或 者減號-,表示在模型中加入一項或去掉一項,第一項前面如果是加號可以 省略
在非交互運行(程序)中應使用print()來輸出。
• digits參數指定每個數輸出的有效數字位數;
• quote 參數指定字元串輸出時是否帶兩邊的撇號;
• print.gap參數指定矩陣或數組輸出時列之間的間距
也用來輸出,但它可以把多個參數連接起來再輸出(具有paste() 的功能)。例如:
讀取文件:
strsplit()得到的結果是 列表。
grep() 和 grepl()
sub()和gsub()
但嚴格地說R語言 沒有字元串替換的函數,因為R語言不管什麼操作對參數都是傳值不傳址,區別如下:
用substr()和substring() 可以通過位置進行字元串拆分或提取,兩者的參數設置基本相同:
strtrim() 函數可以用於將字元串修剪到特定的顯示寬度通過位置進 行字元串拆分或提取:
由於日期內部是用double存儲的天數,所以是可以相減的。
weekdays ( )取日期對象所處的周幾;
months ( )取日期對象的月份;
quarters ( )取日期對象的季度;
其任何一個語句都可以看成是一個表達式。
表達式之間以分號分隔或用換行分隔。
表達式可以續行,只要前一行不是完整表達式,則下一行為上一行的繼續。
quantile(x, probs=seq(0,1,0.25), na.rm=FALSE, names=TRUE, type=7, …)
probs給出相應的百分位數,默認值是0,0.25,0.5,0.75,1;na.rm是處 理缺失數據的,na.rm=TRUE時,NA和NaN將從數據中移走,向量取值中 若有NA或NaN,要添加這一參數,否則會出錯;names若為TRUE,返回 值當中有names這個屬性"; type是取值1-9的整數,選擇了九種分位數演算法 (具體演算法見幫助文件)中的一種。
數據的分布主要考察分布函數(p), 密度函數(d), 分位數函數(q)及產生隨機數(r)
以正態分布為例:
hist(x, breaks="Sturges", freq=NULL, probability=!freq,… )
break規定了直方圖的組距(必須覆蓋數據的范圍);freq是邏輯變數,TRUE是頻率直方圖, FALSE是密度直方圖;probability和freq相反,TRUE是密度直方圖,FALSE是頻率直方圖
其形式為 coplot(y ~ x | z),其中x 和y是數值型向量,z是同長度的因子。 對z的每一水平,繪制相應組的x和y的散點圖
R預設的圖形邊空常常太大,以至於有時圖形窗口較小時邊空佔了整個圖形的很大一部分。
R可以在同一頁面開若干個按行、列排列的窗格,在每個窗格中可以作一 幅圖。每個圖有自己的邊空,而所有圖的外面可以包一個「外邊空」。
一頁多圖用 mfrow 參數或 mfcol 參數規定,如
函數 mtext 用來在外邊空加文字標注。其用法為
在多圖環境中還可以用 mfg 參數來直接跳到某一個窗格,比如
可以不使用多圖環境而直接在頁面中的任意位置產生一個窗格來繪圖,參數為 fig ,如:
先用as.factor()轉化成因子。因為levels()函數裡面必須是因子。
dat$Genre沒有轉化成因子形式,as.factor(dat$Genre)就可以了
該消息表明文件的最後一行不以行尾 (EOL) 字元結尾(換行符 ( ) 或回車 + 換行符 ( ))。此消息的初衷是警告您該文件可能不完整;大多數數據文件都有一個 EOL 字元作為文件中的最後一個字元。
這是因為R讀取文件的時候,是一整段character,所以它只會返回1,適當給他分一下段。
❼ 怎樣才能學好電腦的R語言
R語言快速入門:數據結構+生成數據+數據引用+讀取外部數據
查看完整文檔可至網路網盤:
鏈接:https://pan..com/s/1cEdmpO5idfxx044TpqVBuA
提取碼: bi3t
R是用於統計分析、繪圖的語言和操作環境。R是屬於GNU系統的一個自由、免費、源代碼開放的軟體,它是一個用於統計計算和統計制圖的優秀工具。常被用於統計學、計量分析等領域。接下來講一下我個人認為的R入門知識。
目錄
1 數據結構
1.1 向量
1.2 矩陣
1.3 數據框
2 生成數據
2.1 c() 連接單個數據
2.2 ":" 生成1/-1等差向量
2.3 seq() 生成等距向量
2.4 rep() 生成重復數據
3 數據引用
3.1 引用行/引用列
3.2 引用單個元素
3.3 引用冊歷子矩陣
3.4 變數名引用
4 讀取外部數據(表)
4.1 更改工作目錄
4.2 read.table
4.3 read.csv
正文
1 數據結構
本節主要講向量、矩陣、數據框三種數據結構(入門必須學)
1.1 向量
用於存儲數值型、字元型或邏輯型數據的一維數組,常用"c()"創建。例如:
>c(1,2,8)#生成包含1,2,8的一維數組(向量)
[1]128
1.2 矩陣
二維數組具有行列的概念
#矩陣用法
matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)#表示生成1行,1列的一個矩陣,其中僅僅包含一個元素「NA」
#---示例---#
>matrix(c(1,2,3,11,12,13),nrow=2,ncol=3,byrow=TRUE,dimnames=list(c("row1","row2"),c("C.1","C.2","C.3")))
C.1C.2C.3
row1123
row2111213
#nrow=2和ncol=3定義2x3的2行3列矩陣
#byrow=TRUE是控制矩陣中的數據c(1,2,3,11,12,13)按照行的順序排列,默認按照列排列
#dimnames=list(c("row1","row2"),c("C.1","C.2","C.3"))定義矩陣行名和列名
1.3 數據框
主要用於向量/矩陣合並,可以將不通類型的以向量以及矩陣,按照一定結構存儲在數據框中。
>x<-c(11:20)#其中"<-"是賦值的意思,將向量c(11:20)賦值給對象x
>y<-c(1:10)
>data.frame(xf=x,yf=x)#將向量x和y合並存儲到數據框中,並重命名為xf和yf
xfyf
11111
21212
31313
41414
51515
61616
71717
81818
91919
102020
數組與矩陣類似,但其維度大於2.由於R入門基本接觸不到3維以上數組的概念,目前暫不展開,等入門後在反過來看。
2 生成數據
本節主要講「c()」、":"、seq、rep等四種數據生成的內容(入門必須學)
2.1 「c」 連接單個數據
>c(1,2,8)#生成包含1,2,8的向量
2.2 「:「 生成1/-1等差向量
>1.1:10
[1]1.12.13.14.15.16.17.18.19.1
>1:10
[1]12345678910
>10:1#如x=1:10(遞減,如y=10:1)
[1]10987654321
2.3 seq 生成等距向量
①seq(起點,終點,步長);
②seq(length=9, from=1, to=5)
>seq(1,10,2)
[1]1啟灶3579
>seq(length=5,1,10)
[1]1.003.255.507.7510.00
#seq(x)相當於1:length(x);length(x)為0時悄姿扮,返回integer(0)
>seq(10)
[1]12345678910
>seq(c())
integer(0)
2.4 rep(x,n) 重復
將x重復n次,可使用each限定為依次重復形式
rep(1:3,3)
rep(1:3,each=3)
#>rep(1:3,3)
#[1]123123123
#>rep(1:3,each=3)
#[1]111222333
額外補充:R語言|第2講:生成數據
3 數據引用(以矩陣為例)
數據引用必須懂「對指定維度數據的引用」(以二維矩陣為例)
3.1 行引用/列引用
例如:引用第一行數據,引用第一列數據,引用第一行第一列的數據。
>data(iris)#鳶尾花數據集>dim(iris)#讀取iris數據集的維度數值,以「行數列數」形式展示[1]1505#說明iris數據集是150x5的二維數組
3.2 行列值引用:數據集[行值,列值]
如行值或列值僅1個數字,表示僅引用該行或列的數據
>iris[1,]#引用第1行數據
Sepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
15.13.51.40.2setosa
>head(iris[,1],5)#引用第1列的數據,其中因數據過長,使用head()函數取前5個數字
[1]5.14.94.74.65.0
3.3 引用子矩陣
如行值或列值為組合數據,則表示引用組合行列交叉位置的數據
>iris[1:5,1:3]
Sepal.LengthSepal.WidthPetal.Length
15.13.51.4
24.93.01.4
34.73.21.3
44.63.11.5
55.03.61.4
3.4 變數名引用
(多用於二維數組中):數據集$變數名
>head(iris$Petal.Length,5)
[1]1.41.41.31.51.4
4 讀取外部數據(以.csv表為例)
本節主要講如何讀取外部數據(表)(以.csv表為例)
4.1 設置工作目錄
R語言中數據的輸入需要設置數據讀取的路徑,一般將數據文件放到工作目錄下,這樣直接就可以通過read.table等讀取數據文檔(不許要設置路徑)。
setwd("E:/") #設置當前工作目錄為"E:/"
getwd() #讀取當前工作空間的工作目錄(文件讀取保存路徑)
>getwd()#讀取當前工作空間的工作目錄(文件讀取保存路徑)
[1]"C:/Users/ysl/Documents"
>setwd("E:/")#設置當前工作目錄為"E:/"
>getwd()#再次使用getwd()函數即可查看是否設置成功
[1]"E:/"
方法二:通過R-gui菜單欄設置(文件-改變工作目錄)
4.2 read.table()
#讀取帶分隔符的文本文件。read.table()函數是R最基本函數之一,讀取帶分隔符的文本/表格文件。
#Usage
read.table(file,header=FALSE,sep="",quote=""'",
dec=".",numerals=c("allow.loss","warn.loss","no.loss"),
row.names,col.names,as.is=!stringsAsFactors,
na.strings="NA",colClasses=NA,nrows=-1,
skip=0,check.names=TRUE,fill=!blank.lines.skip,
strip.white=FALSE,blank.lines.skip=TRUE,
comment.char="#",
allowEscapes=FALSE,flush=FALSE,
stringsAsFactors=default.stringsAsFactors(),
fileEncoding="",encoding="unknown",text,skipNul=FALSE)
read.csv(file,header=TRUE,sep=",",quote=""",
dec=".",fill=TRUE,comment.char="",...)
read.csv2(file,header=TRUE,sep=";",quote=""",
dec=",",fill=TRUE,comment.char="",...)
read.delim(file,header=TRUE,sep=" ",quote=""",
dec=".",fill=TRUE,comment.char="",...)
read.delim2(file,header=TRUE,sep=" ",quote=""",
dec=",",fill=TRUE,comment.char="",...)
常用參數的說明如下:
(1)file:file是一個帶分隔符的ASCII文本文件。①絕對路徑或者相對路徑。一定要注意,在R語言中是轉義符,所以路徑分隔符需要寫成"\"或者「/」。所以寫成「C:\myfile\myfile.txt」或者「C:/myfile/myfile.txt」即可。②使用file.choose(),彈出對話框,自動選擇文件位置。例如:read.table(file.choose(),...)。
(2)header:一個表示文件是否在第一行包含了變數的邏輯型變數。如果header設置為TRUE,則要求第一行要比數據列的數量少一列。
(3)sep分開數據的分隔符。默認sep=""。read.table()函數可以將1個或多個空格、tab製表符、換行符或回車符作為分隔符。常見空白分隔符有:空格,製表符,換行符
sep=」」;sep=「 」;sep=「 」
(4)stringsAsFactors邏輯值,標記字元向量是否需要轉化為因子,默認是TRUE。stringsAsFactors=F意味著,「在讀入數據時,遇到字元串之後,不將其轉換為factors,仍然保留為字元串格式」。
(5)encoding設定輸入字元串的編碼方式。
#讀取txt文檔
>df<-read.table("data.txt")
>df
V1V2
1xy
212
334
456
>df<-read.table("data.txt",header=T)
>df
xy
112
234
356
#樣式1:直接讀取數據
>df<-read.table("data.csv")#直接讀取數據
>head(df)
V1
1ID,Sepal.Length,Sepal.Width,Petal.Length,Petal.Width,Species
21,5.1,3.5,1.4,0.2,setosa
32,4.9,3,1.4,0.2,setosa
43,4.7,3.2,1.3,0.2,setosa
54,4.6,3.1,1.5,0.2,setosa
65,5,3.6,1.4,0.2,setosa
#樣式2:讀數+首行表頭
>df<-read.table("data.csv",header=T)#讀數+首行表頭
>head(df)
ID.Sepal.Length.Sepal.Width.Petal.Length.Petal.Width.Species
11,5.1,3.5,1.4,0.2,setosa
22,4.9,3,1.4,0.2,setosa
33,4.7,3.2,1.3,0.2,setosa
44,4.6,3.1,1.5,0.2,setosa
55,5,3.6,1.4,0.2,setosa
66,5.4,3.9,1.7,0.4,setosa
#樣式3:讀數+首行表頭+","逗號分割
>df<-read.table("data.csv",header=T,sep=",")
#讀數+首行表頭+","逗號分割
>head(df)
IDSepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
115.13.51.40.2setosa
224.93.01.40.2setosa
334.73.21.30.2setosa
444.63.11.50.2setosa
555.03.61.40.2setosa
665.43.91.70.4setosa
>summary(df)
IDSepal.LengthSepal.WidthPetal.Length
Min.:1.00Min.:4.300Min.:2.000Min.:1.000
1stQu.:38.251stQu.:5.1001stQu.:2.8001stQu.:1.600
Median:75.50Median:5.800Median:3.000Median:4.350
Mean:75.50Mean:5.843Mean:3.057Mean:3.758
3rdQu.:112.753rdQu.:6.4003rdQu.:3.3003rdQu.:5.100
Max.:150.00Max.:7.900Max.:4.400Max.:6.900
Petal.WidthSpecies
Min.:0.100setosa:50
1stQu.:0.300versicolor:50
Median:1.300virginica:50
Mean:1.199
3rdQu.:1.800
Max.:2.500
#樣式4:讀數+首行表頭+","逗號分割+字元轉因子factor
>df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)
##讀數+首行表頭+","逗號分割+字元轉因子factor
>head(df)
IDSepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
115.13.51.40.2setosa
224.93.01.40.2setosa
334.73.21.30.2setosa
444.63.11.50.2setosa
555.03.61.40.2setosa
665.43.91.70.4setosa
#請注意species結果與樣式3中結果的差異
>summary(df)
IDSepal.LengthSepal.WidthPetal.Length
Min.:1.00Min.:4.300Min.:2.000Min.:1.000
1stQu.:38.251stQu.:5.1001stQu.:2.8001stQu.:1.600
Median:75.50Median:5.800Median:3.000Median:4.350
Mean:75.50Mean:5.843Mean:3.057Mean:3.758
3rdQu.:112.753rdQu.:6.4003rdQu.:3.3003rdQu.:5.100
Max.:150.00Max.:7.900Max.:4.400Max.:6.900
Petal.WidthSpecies
Min.:0.100setosa:50
1stQu.:0.300versicolor:50
Median:1.300virginica:50
Mean:1.199
3rdQu.:1.800
Max.:2.500
4.3 read.csv()
#讀取.csv格式數據,read.table的一種特定應用。read.csv()讀取逗號分割數據文件,read.table()的一種特定應用。默認逗號分割,header=T,stringsAsFactor=T
df<-read.csv("data.csv")#等價與下df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)#第一行和第二行等價
read.csv(file,header=TRUE,sep=",",quote=""",
dec=".",fill=TRUE,comment.char="",...)
#實例
>df<-read.csv("data.csv")
#相當於df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)
>head(df)
IDSepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
115.13.51.40.2setosa
224.93.01.40.2setosa
334.73.21.30.2setosa
444.63.11.50.2setosa
555.03.61.40.2setosa
665.43.91.70.4setosa