您的位置:首页 > 其它

工作手记(二)R语言的data.table框架的学习,以及日常处理数据算法基本流程

2019-03-12 12:34 295 查看

R语言中的data.table框架

可能是我对pandas和numpy的组合不太熟悉,但是R语言对于表格数据的处理有相应的格式,封装的很好,data.table基本上是从data[i,j,by=‘ ’] :在满足i子集的条件下,通过by的分组,对列j进行处理。
但是,格式的固定,并没有限制处理情况的多样化:

diandongbang_fix2[,temp:={
temp2=unique(unlist(tstrsplit(temp,'')))
temp2=temp2[!temp2 %in% c(' ','(',')')]
temp2=paste0(temp2,collapse='|')
temp2
},by=.(id)]

在使用data.table框架时,编写函数不可以使用if语句,因为传进来的是一个boolean型的向量,放在一个if()里面进行判断,是不可运行的。
若是对一张表有if操作,可以多写几个语句,使用data[ ]中的第一个参数进行子集筛选,进行操作。

另外,对于目前自己来说,所做的一些事情,及本所需要的罗列在下面几点:

  • 使用接口来获取数据,getfromSQL94_where[database,table,where_suffix=" "]

  • 使用merge()函数来对所获取的数据进行连接
    merge(data1,data2,by.x= ,by.y= [,all.x=T])
    all,all.x,all.y:指定x和y的行是否应该全在输出文件.即实现左连接,右连接,内连接,外连接等操作。

  • setnames( c( ),c( ) )对相应列名操作,并更换列名。

  • 最后 write.csv( )即可。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: