library(MASS)#載入package MASS
data(package="MASS") #查看MASS中的數據集
data(SP500,package="MASS") #載入MASS中的SP500數據集
data(SP500) #簡化寫法
getwd() #返回當前工作目錄
setwd("d:/r/r-data") #將當前工作路徑修改為
data=read.table("d:/r/r-data/salary.txt",header=T)
data #沒有設置工作目錄
setwd("d:/r/r-data")
data1=read.table("salary.txt",header=T)
data1 #設定工作目錄
data2=read.csv("salary.csv",header=T)
data2 #讀入CSV文件
data3=scan("salary.txt",skip=1,what=list(City="",Work=0,Price=0,Salary=0))
data3 #不存在header參數,skip=1說明讀取時跳過表示名稱的第一行
mode(data) #顯示對象的類型
names(data) #顯示對象中的標簽
dim(data) #顯示對象的維度
data$Salary #通過$符號來選擇字段
attach(data)
Salary
detach(data) #attach()可以直接通過變量名稱來獲取變量信息,detach()用來撤銷
data.fwf=read.fwf("d:/r/r-data/fwf.txt",widths=c(2,4,4,3),col.name=c("w","x","y","z"))
data.fwf #widths用來指定4個變量的寬度,col.names指定4個變量的名稱
data.excel=read.delim("clipboard") #clipboard即剪貼板
data.excel #通過剪貼板的方式來讀取excel中的內容
install.packages("RODBC")
library(RODBC)
channel=odbcConnectExcel2007("Salary.xlsx") #通過RODBC包來連接EXCEL文件
sqlTables(channel) #列出Excel中的表格
data.excel12=sqlFetch(channel,"Sheet1") #讀取sheet1
data.excel12=sqlQuery(channel,"select * from[Sheet1$]") #在channel中使用sql
close(channel) #關閉channel的連接
mode(data.excel12);dim(data.excel12)
library(RMySQL)
con=dbConnect(MySQL(),user="root",password="xjs123",dbname="mysql")
#打開一個MySQL的連接
table.names=dbListTables(con) #將數據庫中的表名存入table.names
field.names=dbListField(con,"event")
dbReadTable(con,"event") #獲取全表
query=dbSendQuery(con,"select *from event")
fetch(query) #顯示SQL的結果
dbRemoveTable(con,"event") #刪除表
dbDisconnect(con) #關閉連接
load("d:/r/r-data/Salary.Rdata") #讀入R格式文件
head(data,5) #顯示數據集前五行
cat(c("AB","C"),c("E","F"),"n",sep="")
#cat()可以連接字符串、數字向量等
i=1:5
cat("i=",i,"n",sep=",") #sep=“,”是以逗號為分隔符
cat(c("AB","C"),c("E","F"),file="d:/r/r-data/cat.txt",sep=".")
readLines("d:/r/r-data/cat.txt") #以行的形式讀取文本
cat(i,file="d:/r/r-data/cat.txt",append=TRUE)
readLines("d:/r/r-data/cat.txt") #append=TRUE表示追加內容,不覆蓋之前內容
a=file("d:/r/r-data/cat.txt") #通過file先打開一個連接
cat("1 2 3 4 ","2 3 5 7","11 13 15 17", file=a, sep="\n") #\n表示換行
read.table(a)
data1=read.table("d:/r/r-data/salary.txt",header=T)
write.table(data1,file="d:/r/r-data/salary1.txt",col.names=T,quote=F)
#寫入數據
write.csv(data1,file="d:/r/r-data/salary1.csv",row.names=F,quote=F)
data.csv=read.csv("d:/r/r-data/salary1.csv")
dim(data.csv)
#寫入CSV文件
save(data,file="d:/r/r-data/salary1.Rdata") #保存R文件
load("d:/r/r-data/salary1.Rdata") #讀入R文件
head(data,5)
