如何添加两个lapply函数的输出文件

时间:2016-01-21 14:10:05

标签: r

我使用了两次lapply函数来分析所有学生的数据以及全班的1-3所学校的失败学生。使用拆分功能,已根据学校名称拆分了两个数据帧。现在,我需要在一个文件中看到一所学校(学校)名单上的学生和失败的学生。

这是我的代码:

spt1 <-split(pass, pass$school) 
# ^ result1 is a dataframe, splitting school wise in pass df

abc=lapply(names(spt1), function(x){write.table(spt1[[x]], 
  file = paste("C:/Users/Documents/Output/Pass", x, ".csv"), row.names = FALSE ,sep = "," )}) 
# ^ for loop to seggregate passed list across all schools

spt2 <-split(fail, fail$school) 
# ^ splitting failur list in the dataframe based on schools

def=lapply(names(spt2), function(x){write.table(spt2[[x]],  
  file = paste("C:/Users/Documents/Output/Fail", x, ".csv"), row.names = FALSE , sep = ",",)}) 
# ^ for loop to seggregate failure list across all schools

现在,我想在单个pdf或csv中查看学校的通过和失败学生的数据。 30个学校的预期输出为30pdf,每个pdf包含通过和失败学生的列表

注意:两个文件夹中的所有文件的列都不同。

1 个答案:

答案 0 :(得分:1)

拥有一些样本数据会很不错。这会让您了解可能的解决方案吗?

<TouchableWithoutFeedback onPress={() => this.Login()}>
  <Text>Sign In</Text>
</TouchableWithoutFeedback>

我的代码使用gridExtra包工作,并将您的表写入pdf文档。您可以根据包裹帮助添加文字和标题......

当然也有使用LaTeX的解决方案...也许你想咨询this question

<强>编辑:

  • 添加了另一个循环,以便在一个页面上安装talbe-chunk
  • 编辑install.packages('gridExtra') require(gridExtra) for(i in 1:length(names(spt1))){ pdf(file = "test.pdf", width=28, height=21, paper='a4') data1 <- spt1[[i]] loops <- ceiling(nrow(data1)/40) for(j in 1:loops){ from <- max(1,(j-1)*40) to <- min(nrow(data1),j*40) grid.table(data1[from:to,], show.rownames = FALSE, gpar.coretext=gpar(fontsize=8) ) grid.newpage() } grid.newpage() data2 <- spt2[[i]] loops <- ceiling(nrow(data2)/40) for(j in 1:loops){ from <- max(1,(j-1)*40) to <- min(nrow(data2),j*40) grid.table(data2[from:to,], show.rownames = FALSE, gpar.coretext=gpar(fontsize=8) ) grid.newpage() } dev.off() } - 函数以获得a4论文