R常用函数

5.13
查看对象类型的函数
mode、class、typeof

d<-data.frame(c1=letters[1:3],c2=1:3,c3=c(1,2,3),stringAsFactor=F)
> sapply(d,mode)
            c1             c2             c3  
     "numeric"      "numeric"      "numeric"      
> sapply(d,class)
            c1             c2             c3 
      "factor"      "integer"      "numeric"      
> sapply(d,typeof)
            c1             c2             c3  
     "integer"      "integer"       "double"     

层层更细化mode()<class()<typeof()

排序函数
sort(x,decreasing=false,na.last=)
decreasing=T/F,是否降序,默认F
na.last=T/F,是否将缺失值放在末尾,默认F
倒序 rev()

重复序列函数
rep(x,times=,length.out=,each=)
length.out 规定序列长度
each 每个元素重复次数

rep(1:3,2)   #重复序列两次
[1] 1 2 3 1 2 3
> rep(1:3,each=2)   #每个元素重复两次
[1] 1 1 2 2 3 3
> rep(1:3,each=2,length.out=5) #每个元素重复两次,序列长度为5
[1] 1 1 2 2 3
> rep(1:3,c(1,2,3))   #分别规定元素重复个数
[1] 1 2 2 3 3 3

导出多张sheet在同一excel

library("XLConnect")
sep_data<-loadWorkbook('sep_data.xlsx', create = TRUE) # 创建excel工作簿
#创建sheet
for (name in c('bjea','shea','cqea','hbea','gdea','eua','wti','kold','ara','q5500','lng')){createSheet(sep_data, name)}
writeWorksheet(sep_data, data_all_2014_bjea1, 'bjea')
writeWorksheet(sep_data, data_all_2014_shea1, 'shea')
writeWorksheet(sep_data, data_all_2014_cqea1, 'cqea')
writeWorksheet(sep_data, data_all_2014_hbea1, 'hbea')
writeWorksheet(sep_data, data_all_2014_gdea1, 'gdea')
writeWorksheet(sep_data, data_all_2014_eua1, 'eua')
writeWorksheet(sep_data, data_all_2014_wti1, 'wti')
writeWorksheet(sep_data, data_all_2014_kold1, 'kold')
writeWorksheet(sep_data, data_all_2014_ara1, 'ara')
writeWorksheet(sep_data, data_all_2014_q55001, 'q5500')
writeWorksheet(sep_data, data_all_2014_lng1, 'lng')
saveWorkbook(sep_data)

附:加载XLConnect报错
原因是没有Java 急忙忙下载个。。。
下载过程参考:mac JDK安装

Unable to find any JVMs matching version "(null)".
No Java runtime present, try --request to install.
错误: package or namespace load failed for ‘XLConnect’:
 loadNamespace()里算'rJava'时.onLoad失败了,详细内容:
  调用: fun(libname, pkgname)
  错误: JVM could not be found
此外: Warning messages:
1: In system("/usr/libexec/java_home", intern = TRUE) :
  运行命令'/usr/libexec/java_home'的状态是1
2: In fun(libname, pkgname) :
  Cannot find JVM library 'NA/lib/server/libjvm.dylib'
Install Java and/or check JAVA_HOME (if in doubt, do NOT set it, it will be detected)

嗯。。。。又报错

错误: OutOfMemoryError (Java): Java heap space
Error in .jcheck(silent = FALSE) : 
  Java Exception <no description because toString() failed>.jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, .jcast(if (inherits(o, "jobjRef") || inherits(o, "jarrayRef")) o else cl, "java/lang/Object"), .jnew("java/lang/String", method), j_p, j_pc, use.true.class = TRUE, evalString = simplify, evalArray = FALSE)new("jobjRef", jobj = <pointer: 0x7fecae226d28>, jclass = "java/lang/OutOfMemoryError")

参考:R语言java.lang.OutOfMemoryError: Java heap space解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值