簡體   English   中英

寫入CSV文件,但每次在R中循環時都使用不同的行

[英]Write to CSV file but use a different row each time in a loop in R

我正在創建一個名為“ std_summary”的數據框,該框會進行一些計算並創建一個數據框。 我將其循環用於要分析的數據集,因此腳本將遍歷並使用分析的數據創建一個新的csv文件。 每個數據集將始終具有相同的列,但行可以有所不同。 我想要做的是將此內容寫入一個csv文件,而不是像現在這樣覆蓋自身或創建一個新的csv文件。 我該怎么做? 我想要做的是貫穿計算並創建數據框。 然后,將數據幀寫入csv文件時,請跳過最后一行的行,然后再寫入。 這是我的代碼。.讓我知道您是否還有其他需要!

std_summary = ddply(stds[!stds$outlier,],.(well_96,concentration),summarize,
mean_int = mean(int,na.rm=T),
std_int = sd(int,na.rm=T),
prec_cv = (std_int*100/mean_int))
std_summary$r_squared = stds.cod
std_summary$slope = stds.lm$coefficients[2]
std_summary$intercept = stds.lm$coefficients[1]
std_summary$plate_barcode = plate_barcode
#Export standards data
cat(paste0(Sys.time()," - Saving standards curve data to ",data_root,"\\standards.csv","\n"))
write.csv(std_summary,file = paste0(data_root,"\\standards_N.csv"),row.names=F)

在循環內部,如果要通過追加數據幀的行到文件中,而不是每次寫入都覆蓋文件,可以使用write.table

例:

filename <- paste0(data_root,"\\standards_N.csv")
write.table(std_summary[3:4,], file=filename, col.names=F, append=T)
write.table(std_summary[26:30,], file=filename, col.names=F, append=T)

注意:您需要設置col.names=F ,否則每次添加到文件時,都將在數據集的中間添加另一個標題行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM