x=c(1,2,3,4) #数据之间要用逗号隔开
x
y=c("a","b","c")
y
> t <- url("https://www.r-project.org/COPYING",encoding = "UTF-8")
> class(t)
[1] "url" "connection"
> d <- scan(t,what = character())
Read 2969 items
> head(d,n=20)
[1] "GNU" "GENERAL" "PUBLIC" "LICENSE"
[5] "Version" "2," "June" "1991"
[9] "Copyright" "(C)" "1989," "1991"
[13] "Free" "Software" "Foundation," "Inc."
[17] "59" "Temple" "Place," "Suite"
#读取txt文件,header文件首行是否包含变量名,sep表示文件中的分隔符,col.names列名称
col_names<-c("col1","col2","col3")
data_txt<-read.table("traindata.txt",header=TRUE,sep="\t",col.names =col_names)
#读取csv文件
data_csv<-read.csv("traindata.csv",header=FALSE)
data <- read.table("C:\\Users\\Hider\\Desktop\\test.txt",
header = TRUE,
encoding = "gbk")
> data<-read.csv("D:\\work\\data\\1.csv") > data X1 X23 1 2 24 2 3 25 3 4 26 4 5 27 5 6 28 > data<-read.csv("D:\\work\\data\\1.csv",header = F) > data V1 V2 1 1 23333 2 2 24 3 3 25 4 4 26 5 5 27 6 6 28 > data<-read.csv("D:\\work\\data\\1.csv",header = T) > data X1 X23333 1 2 24 2 3 25 3 4 26 4 5 27 5 6 28
# 获得数据的方法之一
# wget --no-check-certificate https://biogeo.ucdavis.edu/data/gadm3.6/gpkg/gadm36_AUS_gpkg.zip
library(pacman)
p_load(sf,raster,tidyverse)
# 查看有哪些图层
st_layers(
"data/gadm36_AUS.gpkg"
)
# 读取特定图层
Ausoutline <- st_read("data/gadm36_AUS.gpkg",
layer='gadm36_AUS_0')
read.csv(
file #文件名
header = F #是否指定文件第一行为标题
na.strings = "NA"
#将保存为“NA”的字符串保存为R语言中的NA值
stringsAsFactors = default.stringsAsFactors()
#用于指定将字符串保存为因子还是字符串
)
url_con <- url(description="http://xuzhougeng.top", open="r", encoding = "UTF-8")
class(url_con)
[1] "url" "connection"
kernel<-0 #将文件中的第一列的数据放在kernel对象当中
coorauthor<-0 #将文件中的第二列数据放在coorauthor对象当中
num<-0 #将文件中的第三列数据放在num当中
count<-0 #记录当前读到第count行了,同时也是以上三对象的索引值
count[1]<-0
input<-file("E:\\sample.txt","r")
line=readLines(input,n=1)
line=readLines(input,n=1) #由于第一行不是数据,所以直接跳过第一行
while(length(line)!=0)
{
count[1]=count[1]+1
va=strsplit(line,"\t")#样本中每个数据间隔就是tab
kernel[count[1]]=va[[1]][1]
coorauthor[count[1]]=va[[1]][2]
num[count[1]]=va[[1]][3]
line=readLines(input,n=1)
}
close(input)
var_1<-0
tmp_1=setdiff(kernel,var_1)#setdiff是求得kernel集合和var_1集合当中的差集,也就是kernel当中非重复元素,然后放在tmp_1当中,其中kernel和var_1的顺序无关
var_2<-0
tmp_2=setdiff(coorauthor, var_2)
var_1_len=length(tmp_1)#第一个作者的数量
var_2_len=length(tmp_2)#第二个作者的数量
var_sum<-0#目标数组清空
for(i in 1:var_1_len)
{
var_sum[i]=tmp_1[i]#将第一列中的作者姓名放在var_sum当中
print(var_sum)
}
from=var_1_len+1#记录下所有的var_sum数组中下一个元素的位置,由此开始记录
to=var_1_len+var_2_len
for(i in from:to)
var_sum[i]=tmp_2[i-var_1_len]
var_sum=setdiff(var_sum,var_1)#到此获得了所有的作者姓名并且无重复
# 设置工作目录
setwd("path/to/your/file")
# 读取txt文件
data <- read.table("file.txt", header = TRUE, sep = "\t")
# JSON 简单数组
json <- '["Mario", "Peach", null, "Bowser"]'
# 转换为向量
fromJSON(json)
[1] "Mario" "Peach" NA "Bowser"
.GlobalEnv$datas.name = c(.GlobalEnv$datas.name,.GlobalEnv$values[[1]])
1.每类文件都会使用对应的分隔符,例如用逗号分隔的文件为.csv文件,读取方式为:x
2.head(x) tail(x) 显示x对象首尾6行的内容(默认为6行)
head(x,n=10),一次显示10行内容
3.read.table()函数在使用时,若是.csv文件应设置sep=”,”,所以应提前知道文件的分隔符是什么,此函数中有以下参数:
① header设置第一行是否跳过,默认为FALSE
② skip表示跳过某些内容,如开头的注释
(例如设置skip=5,表示跳过前5行的信息)
③ nrows=100,控制读取到第100行,而skip表示从哪里开始读
④ na.strings表示哪些内容是缺失值
⑤ stingsAsFactors 控制读入的字符串是否转化为因子,默认为TRUE
4.read.csv/csv2/delim/delim2 适合特定格式的文件,delim的分隔符为制表符
5.read.fwf()读取特定宽度的文件
read.fwf(“fwf.txt”,widths=c(3,3)),即给出每一列的宽度值